楼主: love1point
跳转到指定楼层
上一主题 下一主题
收起左侧

Leetcode 刷题记录!!!不信自己今年找不到工作!!!

 
🔗
aegis 2015-6-4 21:10:51 | 只看该作者
全局:
顶楼主。。同在刷题目。。共勉!
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-4 21:19:07 | 只看该作者
全局:
aegis 发表于 2015-6-4 21:10
顶楼主。。同在刷题目。。共勉!

谢谢。你们刷题真早啊
回复

使用道具 举报

🔗
aegis 2015-6-4 21:38:40 | 只看该作者
全局:
love1point 发表于 2015-6-4 21:19
谢谢。你们刷题真早啊

才入学就得投简历找实习了。。时间过起来很快。。
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-5 09:03:49 | 只看该作者
全局:
aegis 发表于 2015-6-4 21:38
才入学就得投简历找实习了。。时间过起来很快。。

Jia you for all of us
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-5 09:17:55 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:16 编辑

Binary tree level order traversal:  https://leetcode.com/problems/binary-tree-level-order-traversal/
idea: 简单
  1. public class Solution {
  2.     public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) {
  3.         ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>();
  4.         
  5.         if(root == null)
  6.         {
  7.             return result;
  8.         }
  9.         
  10.         LinkedList<TreeNode> curr = new LinkedList<TreeNode>();
  11.         LinkedList<TreeNode> next = new LinkedList<TreeNode>();
  12.         curr.offer(root);
  13.         
  14.         ArrayList<Integer> numberList = new ArrayList<Integer>();
  15.         
  16.         while(!curr.isEmpty())
  17.         {
  18.             TreeNode head = curr.poll();
  19.             numberList.add(head.val);
  20.             
  21.             if(head.left != null)
  22.             {
  23.                 next.offer(head.left);
  24.             }
  25.             
  26.             if(head.right != null)
  27.             {
  28.                 next.offer(head.right);
  29.             }
  30.             
  31.             if(curr.isEmpty())
  32.             {
  33.                 curr = next;
  34.                 next = new LinkedList<TreeNode>();
  35.                 result.add(numberList);
  36.                 numberList = new ArrayList<Integer>();
  37.             }
  38.         }
  39.         return result;
  40.     }
  41. }
复制代码
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-5 09:49:38 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:17 编辑

Generate parentheses:  https://leetcode.com/problems/generate-parentheses/
idea: dfs
  1. public class Solution {
  2.     public ArrayList<String> generateParenthesis(int n) {
  3.         ArrayList<String> result = new ArrayList<String>();
  4.         dfs(result, "", n, n);
  5.         return result;
  6.     }
  7.    
  8.     public void dfs(ArrayList<String> result, String s, int left, int right)
  9.     {
  10.         if(left > right)
  11.         {
  12.             return;
  13.         }
  14.         
  15.         if(left == 0 && right ==0)
  16.         {
  17.             result.add(s);
  18.             return;
  19.         }
  20.         
  21.         if(left > 0)
  22.         {
  23.             dfs(result, s + "(", left-1, right);
  24.         }
  25.         
  26.         if(right > 0)
  27.         {
  28.             dfs(result, s + ")", left, right-1);
  29.         }
  30.     }
  31. }
复制代码
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-5 10:36:01 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:19 编辑

Sum root to leaf numbers:  https://leetcode.com/problems/sum-root-to-leaf-numbers/
idea: dfs + 递归
  1. public class Solution {
  2.     public int sumNumbers(TreeNode root) {
  3.         if(root == null)
  4.         {
  5.             return 0;
  6.         }
  7.         return dfs(root, 0, 0);
  8.     }
  9.    
  10.     public int dfs(TreeNode root, int num, int sum)
  11.     {
  12.          if(root == null)
  13.         {
  14.             return sum;
  15.         }
  16.         
  17.         num = num * 10 + root.val;
  18.         
  19.         if(root.left == null && root.right == null)
  20.         {
  21.             sum = sum + num;
  22.             return sum;
  23.         }
  24.         
  25.         sum = dfs(root.left, num, sum) + dfs(root.right, num, sum);
  26.         return sum;
  27.     }
  28. }
复制代码
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-5 11:11:41 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:21 编辑

Trapping rain water:  https://leetcode.com/problems/trapping-rain-water/
idea: 代码还是能看懂的,记忆
  1. public class Solution {
  2.     public int trap(int[] height) {
  3.         int result = 0;
  4.         
  5.         if(height.length <= 2)
  6.         {
  7.             return result;
  8.         }
  9.         
  10.         int[] left = new int[height.length];
  11.         int[] right = new int[height.length];
  12.         
  13.         int max = height[0];
  14.         left[0] = height[0];
  15.         for(int i = 1; i < height.length; i++)
  16.         {
  17.             if(height[i] < max)
  18.             {
  19.                 left[i] = max;
  20.             }
  21.             else
  22.             {
  23.                 left[i] = height[i];
  24.                 max = height[i];
  25.             }
  26.         }
  27.         
  28.         max = height[height.length-1];
  29.         right[height.length-1] = height[height.length-1];
  30.         for(int i = height.length-2; i>=0; i--)
  31.         {
  32.             if(height[i] < max)
  33.             {
  34.                 right[i] = max;
  35.             }
  36.             else
  37.             {
  38.                 right[i] = height[i];
  39.                 max = height[i];
  40.             }
  41.         }
  42.         
  43.         for(int i =0; i < height.length; i++)
  44.         {
  45.             result = result + Math.min(left[i], right[i]) - height[i];
  46.         }
  47.         return result;
  48.     }
  49. }
复制代码
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-5 15:59:22 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:22 编辑

Find minimum in rotated sorted array ii:  https://leetcode.com/problems/fi ... ed-sorted-array-ii/
idea: 估计面试官不让过
  1. public class Solution {
  2.     public int findMin(int[] nums) {
  3.         Arrays.sort(nums);
  4.         return nums[0];
  5.     }
  6. }
复制代码
回复

使用道具 举报

🔗
jsqihui 2015-6-5 20:29:47 | 只看该作者
全局:
建议去刷 lintcode和上一下九章算法的课程,自己的亲身体会,总结的很好,在这免费帮他们打一下广告了。。。。虽然自己还在苦逼的跳槽中。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表