原创 leetcode 122 買賣股票的最佳時機II(無限次交易)

定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。 設計一個算法來計算你所能獲取的最大利潤。你可以儘可能地完成更多的交易(多次買賣一支股票)。 注意:你不能同時參與多筆交易(你必須在再次購買前出售掉之前的股票)。 示例 1:

原创 leetcode 772 基本計算器III(包含+-*/ 以及括號)

現基本計算器以計算簡單表達式字符串。 表達式字符串可以包含左括號(和右括號)、加號+或減號、非負整數和空格。 表達式字符串只包含非負整數、+、-、*、/運算符、左括號和空格。整數除法應該截斷爲零。 您可以假定給定的表達式總是有效的。所有中

原创 leetcode 123 買賣股票的最佳時機III(2筆交易)

  class Solution { public int maxProfit(int[] prices) { if (prices.length <= 0) { return 0;

原创 Java 實現26進制加法

import java.util.ArrayList; import java.util.Scanner; public class Test { //全局變量進位 private static int jinWei

原创 leetcode 150逆波蘭表達式求值

根據逆波蘭表示法,求表達式的值。 有效的運算符包括 +, -, *, / 。每個運算對象可以是整數,也可以是另一個逆波蘭表達式。 說明: 整數除法只保留整數部分。 給定逆波蘭表達式總是有效的。換句話說,表達式總會得出有效數值且不存在除數爲

原创 快速排序非遞歸實現

import java.util.Arrays; import java.util.Stack; public class Main { /** * 採用非遞歸的方法,首先要想到棧的使用,通過閱讀遞歸調用部分的代碼

原创 leetcode 56 區間合併

給出一個區間的集合,請合併所有重疊的區間。 示例 1: 輸入: [[1,3],[2,6],[8,10],[15,18]] 輸出: [[1,6],[8,10],[15,18]] 解釋: 區間 [1,3] 和 [2,6] 重疊, 將它們合併爲

原创 鏈表相加

定兩個非空鏈表,每一個節點代表一個數字0-9,單個鏈表從左往右是由高位到低位組成的一個數, 現在需要將兩個鏈表表示的數相加並且以鏈表形式返回。 舉例:Input: (7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4) Ou

原创 leetcode 93 復原IP地址

給定一個只包含數字的字符串,復原它並返回所有可能的 IP 地址格式。 示例: 輸入: "25525511135" 輸出: ["255.255.11.135", "255.255.111.35"]   思路:本題用遞歸實現,一個ip地址只

原创 leetcode 227 基本計算器II(只有加減乘除無括號)

實現一個基本的計算器來計算一個簡單的字符串表達式的值。 字符串表達式僅包含非負整數,+, - ,*,/ 四種運算符和空格  。 整數除法僅保留整數部分。 示例 1: 輸入: "3+2*2" 輸出: 7 示例 2: 輸入: " 3/2 "

原创 兩個隊列實現一個棧

import java.util.LinkedList; import java.util.Queue; /** * 兩個隊列實現一個棧 * * 一個隊列加入元素,彈出元素時,需要把隊列中的 元素放到另外一個隊列中,刪除最

原创 leetcode 224 基本計算器(只有加減和括號)

實現一個基本的計算器來計算一個簡單的字符串表達式的值。 字符串表達式可以包含左括號 ( ,右括號 ),加號 + ,減號 -,非負整數和空格  。 示例 1: 輸入: "1 + 1" 輸出: 2 示例 2: 輸入: " 2-1 + 2 "

原创 查找二叉樹第n行的結點數

public static int getNumInLevel(TreeNode root, int n) { if (root == null || n <= 0) return 0; if (n ==

原创 Java 實現64進制加法

public class test627{ public static void main(String[] args) { //0~9 48~57 //A~Z 65~90 //a~z 97~122 String A

原创 leetcode 121 買賣股票的最佳時機(1筆交易)

class Solution { public int maxProfit(int[] prices) { if (prices.length == 0) { return 0;