上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页
摘要: 这个 不是很简单嘛。。。。 用一个队列来实现,每次pop和top的时候把数据循环从头部取出尾部输入,就可以得到和栈一样的顺序 class MyStack { /** Initialize your data structure here. */ private Queue<Integer> queu 阅读全文
posted @ 2020-04-10 20:47 doyi 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 脑壳铁了,只想到用栈,没什么思路我的妈 题解中用栈的思路是: class Solution { public int trap(int[] height) { int sum=0; Stack<Integer> stack=new Stack<>(); int current=0; while(cu 阅读全文
posted @ 2020-04-10 20:33 doyi 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 自己做的错了,没考虑到中间可能有多个空格: public static String reverseWords(String s){ String[] s1 = s.trim().split(" "); String s2=new String(); s2=s1[s1.length-1]+" "; 阅读全文
posted @ 2020-04-10 19:07 doyi 阅读(151) 评论(0) 推荐(0) 编辑
摘要: https://snailclimb.gitee.io/javaguide/#/docs/operating-system/basis 程序员必知的 89 个操作系统核心概念 写给大忙人看的操作系统 进程和线程基础知识全家桶,30 张图一套带走 真棒!20 张图揭开内存管理的迷雾,瞬间豁然开朗 操作 阅读全文
posted @ 2020-04-10 15:45 doyi 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 自己做的: public static ListNode reverseList(ListNode head) { ListNode cur=head; // ListNode next=head.next; ListNode pre=null; while(cur.next!=null){ Lis 阅读全文
posted @ 2020-04-09 16:15 doyi 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 自己想的: class Solution { public int majorityElement(int[] nums) { Arrays.sort(nums); return nums[nums.length/2]; } } 方法二: 摩尔投票法,时间复杂度O(n),因为要遍历一次数组,空间复杂 阅读全文
posted @ 2020-04-09 15:52 doyi 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 这个题本质就是要求某个数与其右边最大的数的差值,这符合了单调栈的应用场景 当你需要高效率查询某个位置左右两侧比他大(或小)的数的位置的时候,于是就用单调栈解决 官方答案给的一个贪心的算法: public class L121 { public int maxProfit(int prices[]){ 阅读全文
posted @ 2020-04-09 15:40 doyi 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 参考DFS和BFS 方法一:DFS class Solution { public List<String> generateParenthesis(int n) { List<String> res = new ArrayList<>(); // 特判 if (n == 0) { return r 阅读全文
posted @ 2020-04-09 14:57 doyi 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 一开始想出来的解法就是错误的,ohmo class Solution { public int movingCount(int m, int n, int k) { int res=0; for(int i=0;i<m;i++){ for(int j=0;j<n;j++){ int h=i%10+i 阅读全文
posted @ 2020-04-08 22:18 doyi 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 脑壳铁了,竟然想不起来应该怎么把这一位的进位加到下一位上。 小技巧:对于链表问题,返回结果为头结点时,通常需要先初始化一个预先指针 pre,该指针的下一个节点指向真正的头结点head。使用预先指针的目的在于链表初始化时无可用节点值,而且链表构造过程需要指针移动,进而会导致头指针丢失,无法返回结果。 阅读全文
posted @ 2020-04-08 21:34 doyi 阅读(99) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页