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

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

 
🔗
whoami250 2015-6-18 12:39:16 | 只看该作者
全局:
love1point 发表于 2015-6-16 17:47
3 sum: https://leetcode.com/problems/3sum/

idea: 这题代码不难理解。关键是如何去重, 比如[-2,0,0 ...

好励志的答案搬运贴
http://www.jiuzhang.com/solutions/3sum/
回复

使用道具 举报

🔗
whoami250 2015-6-18 12:41:39 | 只看该作者
全局:
love1point 发表于 2015-6-16 12:09
Letter combinations of a phone number:  https://leetcode.com/problems/letter-combinations-of-a-phone ...

好励志的答案搬运贴
http://www.programcreek.com/2014 ... -phone-number-java/
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-18 17:50:59 | 只看该作者
全局:
正在从做 了 100 题  到 做了 200题 突破,我相信这又是一个质的飞跃
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-19 15:39:54 | 只看该作者
全局:
Majority element:  https://leetcode.com/problems/majority-element/

Idea: Key 是元素,Value是该元素累计出现的次数。然后可得到最大出现次数的元素
  1. public class Solution {
  2.     public int majorityElement(int[] nums) {
  3.         HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
  4.         for(int i = 0; i < nums.length; i++)
  5.         {
  6.             if(map.containsKey(nums[i]))
  7.             {
  8.                 map.put(nums[i], map.get(nums[i])+1);
  9.             }
  10.             else
  11.             {
  12.                 map.put(nums[i], 1);
  13.             }
  14.         }
  15.         
  16.         int max = 0;
  17.         for(Integer i : map.values())
  18.         {
  19.             max = Math.max(i, max);
  20.         }
  21.         
  22.         for(int i = 0; i < nums.length; i++)
  23.         {
  24.             if(map.get(nums[i]) == max)
  25.             {
  26.                 return nums[i];
  27.             }
  28.         }
  29.         return 0;
  30.     }
  31. }
复制代码
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-19 18:05:18 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-19 18:22 编辑

Min Stack:  https://leetcode.com/problems/min-stack/

Idea: 再来一个stack来保存最小值

  1. class MinStack {
  2.     Stack<Integer> stack = new Stack<Integer>();
  3.     Stack<Integer> minStack = new Stack<Integer>();
  4.     public void push(int x) {
  5.         stack.push(x);
  6.         if(minStack.empty())
  7.         {
  8.             minStack.push(x);
  9.         }
  10.         else if(x <= minStack.peek())
  11.         {
  12.             minStack.push(x);
  13.         }
  14.     }

  15.     public void pop() {
  16.         if(stack.peek().equals(minStack.peek()))
  17.         {
  18.             minStack.pop();
  19.         }
  20.         stack.pop();
  21.     }

  22.     public int top() {
  23.         return stack.peek();
  24.     }

  25.     public int getMin() {
  26.             return minStack.peek();
  27.     }
  28. }
复制代码

回复

使用道具 举报

🔗
syxgtsyxgt 2015-6-21 20:02:55 | 只看该作者
全局:
楼主平时还上课吗。。。
回复

使用道具 举报

🔗
sharkwolf 2015-6-21 20:33:30 | 只看该作者
全局:
syxgtsyxgt 发表于 2015-6-21 20:02
楼主平时还上课吗。。。

楼主 CS PhD在读多年,早不用上课了。
回复

使用道具 举报

🔗
Westlike 2015-6-22 21:13:10 | 只看该作者
本楼:
全局:
physics......
回复

使用道具 举报

🔗
stellari 2015-6-22 23:04:35 | 只看该作者
全局:
love1point 发表于 2015-6-18 10:00
Rectangle area:  https://leetcode.com/problems/rectangle-area/

idea: 其实这题考察没啥意义,估计面 ...

楼主我建议你搬运的时候还是要加原始出处。这不仅能让大家去原始出处看到原作者对该问题的分析,同时也是对原作者劳动成果的一个尊重。无论如何,我更希望能在地里看到楼主自己的implementation,也就是别的地方看不到的原创性的东西。如果只是搬运的话,意义就不大了。
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-23 08:54:03 | 只看该作者
全局:
stellari 发表于 2015-6-22 23:04
楼主我建议你搬运的时候还是要加原始出处。这不仅能让大家去原始出处看到原作者对该问题的分析,同时也是 ...

因为是你,所以我做出回复。

我贴出的代码都是我自己用我习惯的代码方式一个字符一个字符敲出来在leetcode AC后才贴在此帖供我自己以后复习方便哈,尤其红色字体部分的都是我自己的想法,独一无二,啥搬运啊。别信那个整天在我帖子里瞎嚷嚷的心理有问题的其他物种说的东西,他的东西我直接忽略的        idea: 其实这题考察没啥意义,估计面试也不会考,这题纯粹是数学的几何题,划划图,还是能做出了的,要耐心点。看过一遍答案下次还是能做出来的。就是,如果,两个矩阵不重合(就是最右横坐标小于另外一个最左横坐标,或者最上纵坐标小于另一个最低纵坐标),两个面积相加。如果重合,就是两个矩阵面积减去重合面积。
回复

使用道具 举报

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

本版积分规则

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