拖延症解决办法
对于拖延症,不知道怎么去解决,其实很多办法都能够帮助自己 下面是xmind对应的拖延症的一个思路 # 任务名称 ## 一、时间管理 ### 1. 评分标准 ### 2. 作业管理 ## 二、任务管理 ### 1. 任务拆解 ### 2. 生产力工具 ### 3. 完成后的激励 ## 三、环境 ### 1. 消除分心 ### 2. 减少干扰 ## 四、态度 ### 1. 合理安排 ### 2. 量力而行 用上面的任务,来解决拖延症的问题,尝试尝试
对于拖延症,不知道怎么去解决,其实很多办法都能够帮助自己 下面是xmind对应的拖延症的一个思路 # 任务名称 ## 一、时间管理 ### 1. 评分标准 ### 2. 作业管理 ## 二、任务管理 ### 1. 任务拆解 ### 2. 生产力工具 ### 3. 完成后的激励 ## 三、环境 ### 1. 消除分心 ### 2. 减少干扰 ## 四、态度 ### 1. 合理安排 ### 2. 量力而行 用上面的任务,来解决拖延症的问题,尝试尝试
这里没有记住,需要在吸收下 链表反转 206. 反转链表 for循环处理 时间复杂度O(N)(循环整个链表),空间复杂度O(1),只有几个临时变量 其实链表反转,无非就是上面这张图。 记录current的next节点(因为这里current的next需要指向pre) 把current的next指向pre 把current节点变成pre节点 把next节点变成current节点 最后当current节点变成空时,pre节点就是反转后的链表 代码如下: if head == nil || head.Next == nil { return head } current := head // 把头指向当前 var pre *ListNode // 做一个pre节点 for current != nil { next := current.Next // 1.记录当前的下一个节点 current.Next = pre // 2.把当前的next指向pre pre = current // 3.把current节点变成pre节点 current = next // 4.把next节点变成current节点 } return pre 迭代处理 核心思想:“2”节点后面的额所有元素都进过反转了,但是head“1”节点的next还是指向了“2”,所以可以直接把“2”的next指向head,这样就有反转后的链表了 if head == nil || head....
到现在面试经历过很多次了,却很少有成功,之前拒掉了几次面试,现在非常后悔。 这里记录下之前面试的他们的算法题 1. 如何判断一个链表有环 快慢指针可以解决这个问题 使用快慢指针。这里为什么会相遇?最坏的打算当慢指针走一圈的时候,快指针可以走两圈,所以刚好会在同一个点上面。 如果最后指向null,则说明没有环,如果最后走到了相同点,则说明有环。 如何判断该环的起点在什么地方 可以假设 环起点 到相遇点的距离为 m 那么head到 环起点 刚好是 k-m 因为慢指针走了 k 步快指针走了 2k 步相遇了,那么相遇点到快指针的相遇点(N圈之后的相遇点)距离就变成了 2k-k=k 距离一样。那么剪掉相同的环起点到相遇点的 m 都变成了 k-m 步。这样,把任何一个指针的头指针指向 head,用相同的速度,再次相遇点,就是环起点。 2. 两条链表是否相交 要判断两个链表是否相交,可以判断有没有共同部分,那么共同部分怎么判断呢? 最原始的办法:使用map(映射)来记录每个node的信息,java中地址值不存在,可以直接判断引用是否一致。golang可以根据地址是否一致,也可以记录value是否一致(当然存在相同的value的情况就不行了) 使用特殊手法,如下图 双指针同时进行 迭代A链表,结束后,迭代B链表 迭代B链表,结束后,迭代A链表 在迭代的时候,判断两个指针是否一致,如果存在一致 具体代码可以是 p1, p2 := headA, headB for p1 != p2 { if p1 == nil { p1 = headB } else { p1 = p1.Next } if p2 == nil { p2 = headA } else { p2 = p2....
Go 的RPC 相关的基础信息 1. 环境配置(MacOS) 1.1 protoc 安装 # 1. brew 安装 brew search protobuf brew install protobuf # 可以指定版本protobuf@21 # 验证是否安装成功 protoc --version # 2. 源码安装 https://github.com/protocolbuffers/protobuf/releases #下载对应的版本,放入GOPATH中的bin目录下 1.2 protoc-gen-go 安装 go install google.golang.org/protobuf/cmd/protoc-gen-go@latest # 安装过程中会出现无法下载,需要自行“走强” # 验证 protoc-gen-go help # protoc-gen-go: unknown argument "help" (this program should be run by protoc, not directly) # ps:我觉得只要识别到,就应该安装成功了 1.3 protoc-gen-go-grpc 安装 go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest # 同 protoc-gen-go # 验证 protoc-gen-go-grpc -version # protoc-gen-go-grpc 1....