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

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

 
🔗
 楼主| love1point 2015-6-3 10:29:25 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-3 14:02 编辑

重复提交了一道题,已删
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-3 10:30:16 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-3 14:01 编辑
  1. 重复提交了一道题,已删
复制代码
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-3 12:40:09 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:05 编辑

Isomorphic strings: https://leetcode.com/problems/isomorphic-strings/
idea:  此题主要练习了hashmap的方法了
  1. public class Solution {
  2.     public boolean isIsomorphic(String s, String t) {
  3.         HashMap<Character, Character> map = new HashMap<Character, Character>();
  4.         for(int i = 0; i < s.length(); i++)
  5.         {
  6.             char c1 = s.charAt(i);
  7.             char c2 = t.charAt(i);
  8.             
  9.             Character c = getKey(map, c2);
  10.             if( c != null && c != c1)
  11.             {
  12.                 return false;
  13.             }
  14.             else if(map.containsKey(c1))
  15.             {
  16.                 if(c2 != map.get(c1))
  17.                 {
  18.                     return false;
  19.                 }
  20.                
  21.             }
  22.             else
  23.                 {
  24.                     map.put(c1, c2);
  25.                 }
  26.         }
  27.         return true;
  28.     }
  29.         
  30.         public Character getKey(HashMap<Character, Character> map, Character target)
  31.         {
  32.             for(Map.Entry<Character, Character> entry : map.entrySet())
  33.             {
  34.                 if(entry.getValue().equals(target))
  35.                 {
  36.                     return entry.getKey();
  37.                 }
  38.             }
  39.             return null;
  40.         }
  41.     }
复制代码
回复

使用道具 举报

🔗
57656929bb 2015-6-3 13:28:25 | 只看该作者
全局:
楼主最好一遍达到最优空间时间,否则意义不大,公司面试不会要你那些一眼看出来的解法的
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-3 13:42:58 | 只看该作者
全局:
57656929bb 发表于 2015-6-3 13:28
楼主最好一遍达到最优空间时间,否则意义不大,公司面试不会要你那些一眼看出来的解法的

这是我努力的目标!目前这阶段,先把题AC过了最重要!
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-3 13:57:09 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:06 编辑

Max points on a line:  https://leetcode.com/problems/max-points-on-a-line/
idea: 此题还是比较难的,好像考得不多。
  1. public class Solution {
  2.     public int maxPoints(Point[] points) {
  3.         HashMap<Double, Integer> result = new HashMap<Double, Integer>();
  4.         int max = 0;
  5.         
  6.         for(int i = 0; i < points.length; i++)
  7.         {
  8.             int duplicate = 1;
  9.             int vertical = 0;
  10.             for(int j = i + 1; j < points.length; j++)
  11.             {
  12.                 if(points[i].x == points[j].x)
  13.                 {
  14.                     if(points[i].y == points[j].y)
  15.                     {
  16.                         duplicate++;
  17.                     }
  18.                     else
  19.                     {
  20.                         vertical++;
  21.                     }
  22.                 }
  23.                 else
  24.                 {
  25.                     double slope = points[j].y == points[i].y ? 0.0: (1.0*(points[j].y - points[i].y)) / (points[j].x - points[i].x);
  26.                     
  27.                     if(result.get(slope) != null)
  28.                     {
  29.                         result.put(slope, result.get(slope)+1);
  30.                     }
  31.                     else
  32.                     {
  33.                         result.put(slope,1);
  34.                     }
  35.                 }
  36.             }
  37.             
  38.         for(Integer count : result.values())
  39.         {
  40.             if(count + duplicate > max)
  41.             {
  42.                 max = count + duplicate;
  43.             }
  44.         }
  45.         
  46.         max = Math.max(vertical + duplicate, max);
  47.         result.clear();
  48.         
  49.         }
  50.         return max;
  51.     }
  52.    
  53. }
复制代码
回复

使用道具 举报

🔗
willlovecode 2015-6-3 15:11:33 | 只看该作者
本楼:
全局:
加油,加油
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-3 16:47:34 | 只看该作者
全局:
本帖最后由 love1point 于 2015-6-17 17:07 编辑

Reverse integer:  https://leetcode.com/problems/reverse-integer/
idea: 此题难在要如何防止溢出
  1. public class Solution {
  2.     public int reverse(int x) {  
  3.     if(x==Integer.MIN_VALUE)  
  4.         return 0;  
  5.     boolean negative = false;
  6.         if (x < 0)
  7.         {
  8.                 x = 0 - x;
  9.                 negative = true;
  10.         }

  11.         int result = 0;

  12.         while (x != 0)
  13.         {
  14.             if( result > (Integer.MAX_VALUE - x % 10) /10)
  15.             {
  16.                 return 0;
  17.             }
  18.                 int mod = x % 10;
  19.                 x = x / 10;
  20.                 result = result * 10 + mod;
  21.         }

  22.         if(negative)
  23.         {
  24.             result = 0 - result;
  25.         }
  26.         return result;
  27. }
  28. }
复制代码
回复

使用道具 举报

🔗
Westlike 2015-6-3 21:21:52 | 只看该作者
全局:
真心不想当码农
回复

使用道具 举报

🔗
 楼主| love1point 2015-6-4 09:43:27 | 只看该作者
全局:
Westlike 发表于 2015-6-3 21:21
真心不想当码农

你啥专业的啊
回复

使用道具 举报

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

本版积分规则

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