查看: 6463| 回复: 19
跳转到指定楼层
上一主题 下一主题
收起左侧

人到中年,失业1年多,现在重新开始

   
🙏 16
💪 1
全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x

说大不大,说小不小。上有老,下有小。


之前在职场被烙印整的身体出状况,现在恢复的差不多了,重新开始了。


说别的都没用了,只能靠真功夫,然后就是Networking。


准备用这个帖子当精神寄托,每天打卡了。


有兴趣的同学,可以抱团刷题。

补充内容 (2025-01-14 05:24 +08:00):







还请大家加一个米,这样我可以去看其他的面经了

上一篇:有刷题或者 SD mock群吗?
下一篇:组队刷 LeetCode 算法题!押金制,有监督。
推荐
 楼主| nabulas 2025-1-9 02:59:20 | 只看该作者
全局:
今天早上,睁眼,直接去到停车场8层,因为这里最安静,趁大脑的黄金时间,开始复习算法题和Java的面试题。复习了50分钟,再回楼上,吃早餐。

小孩站在high chair上,吃鸡蛋,并咿咿呀呀的跟我们说话。

吃完饭,请求继续去停车场学习30分钟再上来。

然后给小孩换尿片,换衣服,穿鞋子,然后出门送去daycare。这样的生活已经持续了4个月了。 而之前也已经失业8个月了。

面对这样的困境,只有一个出路,那就是调整心态,继续找到节奏,换换脑子,然后继续前行。

连睡觉都在想,是不是要换个方向了。

---

今天准备写code 2题了。然后系统设计,希望能开始整理一个主题的答案。再然后,做运动,和大量的水,然后中午看看是否能去参加ToastMaster。跟自己加油吧。
回复

使用道具 举报

推荐
 楼主| nabulas 2025-1-11 02:58:42 | 只看该作者
全局:
很不幸的是,昨天依然没有写code。光看思路就看了一整天。很多题的思路。今天希望能写2题的code。过几天就要面试了。加油!
回复

使用道具 举报

全局:
楼主加油!
回复

使用道具 举报

🔗
qlxf 2025-1-9 03:09:16 | 只看该作者
全局:
生活不易,加油!⛽️
回复

使用道具 举报

🔗
飞向月球 2025-1-9 07:35:37 | 只看该作者
全局:
加油,共勉!
回复

使用道具 举报

🔗
 楼主| nabulas 2025-1-10 02:22:03 | 只看该作者
全局:
今天一大早,吃早餐,就是一回头没看到的功夫,小孩已经把牛奶打翻,然后在桌上拍牛奶,结果四处都是牛奶。

深呼吸,赶紧拿盆接水,然后擦地。然后送去幼儿园了。现在回来已经10点半。

继续加油。昨天的任务没有完成。今天定一个可行的计划:

- 写code两个medium
- 继续复习系统设计一个题目
- 投简历25分钟
- Networking 2个朋友
- 今天去图书馆学习,在家实在搞不懂。
- 据说Trump要收购加拿大了。我估计这要5-10年的功夫把
回复

使用道具 举报

全局:
楼主已经很优秀了,继续加油!
回复

使用道具 举报

🔗
 楼主| nabulas 2025-1-12 07:02:35 | 只看该作者
全局:
本帖最后由 nabulas 于 2025-1-11 15:28 编辑

今天早上起来,然后接着去刷题。有一题值得我自己注意一下,就是

33. Search in Rotated Sorted Array

这题看起来简单,但很久不写之后,拿出来写,就出问题了。

下面是我的错误代码:
  1. class Solution {
  2.   
  3.    public int search(int[] nums, int target) {
  4.    
  5.         if(nums == null || nums.length = 0){        
  6.             return -1;
  7.         }
  8.         
  9.         int left = 0;
  10.         int right = nums.length - 1;
  11.         
  12.         while(left + 1 < right){
  13.         
  14.             int mid = left + (right - left)/2;
  15.             
  16.             if(nums[mid] >= nums[left]){                        
  17.                 if(nums[mid] >= target){
  18.                     right = mid;
  19.                 } else {
  20.                     left = mid;
  21.                 }
  22.             }
  23.             
  24.             if(nums[mid] <=nums[right]){
  25.                 if(nums[mid] <= target){               
  26.                     left = mid;
  27.                 } else {
  28.                     right = mid;
  29.                 }               
  30.             }         
  31.         }
  32.         
  33.         if(nums[left] == target){
  34.             return left;
  35.         }
  36.         
  37.         if(nums[right] == target){
  38.             return right;
  39.         }
  40.         
  41.         return -1;
  42.    }
  43.    
  44. }
复制代码
其中的错误是:


1.  if(nums[mid] >= nums[left]){      -->  这里为何一定要 >= 呢, 其实当   nums[mid] == nums[left] 的话,这里也没有什么好做的吧?

2. if(nums[mid] >= target){      -->  这里只限定了一边。而target是有可能不存在,并且出界了





------


然后刚才又写了下 Meeting Rooms II  

这麻烦的是,在PQ里面,不知道如何排序boolean值。而现在知道了,在boolean里面,false默认为0,而true为1。如果是 (a, b)-> a.isBegin - b.isBegin   说明,是按照 0, 1 排序,所以false排在前面。
回复

使用道具 举报

🔗
 楼主| nabulas 2025-1-14 04:54:52 | 只看该作者
全局:
本帖最后由 nabulas 于 2025-1-13 13:23 编辑

周末浪了一下,结果造成今天精神萎靡不振。。。。。


889. Construct Binary Tree from Preorder and Postorder Traversal  这题看起来简单,但写起code来真的很麻烦。我要总结一下


这题重点是:

1. 找到root节点。

2. 查找root节点,在postOrder的位置。

3. 找到左子树的size。本题关键

4. 然后用这个,左子树的size,来判定区间

class Solution {
    public TreeNode constructFromPrePost(int[] preorder, int[] postorder) {

        int right = preorder.length - 1;

        Map<Integer, Integer> poMap = new HashMap<>();  // Physical Meaning: value, and its index in postorder

        for(int i = 0; i < postorder.length; i++){
            poMap.put(postorder[i], i);
        }


        return helper(preorder, 0, right, postorder, 0, right, poMap);   
    }

    private TreeNode helper(int[] preorder, int preL, int preR,      
                            int[] postorder, int postL, int postR,
                            Map<Integer, Integer> poMap)
    {

        if(preL > preR){
            return null;
        }

        TreeNode root = new TreeNode(preorder[preL]);

        if(preL == preR){
            return root;
        }

        int leftRoot = preorder[preL + 1];

        int leftRootIndex = poMap.get(leftRoot);

        int leftTreeSize = leftRootIndex - postL + 1;


        root.left = helper(preorder, preL + 1, preL + leftTreeSize,      postorder, postL, leftRootIndex, poMap);  

        root.right = helper(preorder, preL + leftTreeSize + 1, preR,        postorder, leftRootIndex + 1, postR - 1, poMap);  

        return root;
    }
}






LeetCode 98题

而这题


class Solution {
    public boolean isValidBST(TreeNode root) {
        return helper(root, Integer.MIN_VALUE, Integer.MAX_VALUE);
    }

    private boolean helper(TreeNode root, int min, int max){

        if(root == null){
            return true;
        }

        if(root.val <= min || root.val >= max){
            return false;
        }

        return helper(root.left, min, root.val) &&  helper(root.right, root.val, max);  
    }
}

这个答案是错的,看看你能一下就看出来吗?         回答正确的人可以加好友一起刷题了   :)
回复

使用道具 举报

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

本版积分规则

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