摘要:
自己做的: public static ListNode reverseList(ListNode head) { ListNode cur=head; // ListNode next=head.next; ListNode pre=null; while(cur.next!=null){ Lis 阅读全文
摘要:
自己想的: class Solution { public int majorityElement(int[] nums) { Arrays.sort(nums); return nums[nums.length/2]; } } 方法二: 摩尔投票法,时间复杂度O(n),因为要遍历一次数组,空间复杂 阅读全文
摘要:
这个题本质就是要求某个数与其右边最大的数的差值,这符合了单调栈的应用场景 当你需要高效率查询某个位置左右两侧比他大(或小)的数的位置的时候,于是就用单调栈解决 官方答案给的一个贪心的算法: public class L121 { public int maxProfit(int prices[]){ 阅读全文
摘要:
参考DFS和BFS 方法一:DFS class Solution { public List<String> generateParenthesis(int n) { List<String> res = new ArrayList<>(); // 特判 if (n == 0) { return r 阅读全文