1.Algorithm
class Solution {
public int climbStairs(int n) {
if(n<=2) return n;
int a=1,b=2,r=2;
for (int i=3;i<=n;i++){
r=a+b;
a=b;
b=r;
}
return r;
}
}
2.Review
Data Structure - Circular Linked List
循环链表是链表的变体,它的第一个元素指向最后一个元素,最后一个元素指向第一个元素。单链表和双链表都可以变成循环链表。
作为循环的单链表
在单链表中,最后一个节点的下一个指针指向第一个节点。
作为循环的双端链表
在双端链表中,最后一个节点的下一个指针指向第一个节点,第一个节点的上一个指针指向最后一个节点,使得在两个方向上循环。
根据上面的说明,以下是需要考虑的要点。
- 在单链表和双链表两种情况下,最后一个链接的next指向链表的第一个链接。
- 在双链表的情况下,第一个链接的previous指向链表的最后一个节点。
基本操作
下面是支持循环列表的重要操作。
- 插入-在列表的开始处插入一个元素。
- 删除-从列表的开头删除一个元素。
- 显示-显示列表。
插入操作
下面的代码演示了基于单链表的循环链表中的插入操作。
示例:
insertFirst(data):
Begin
create a new node
node -> data := data
if the list is empty, then
head := node
next of node = head
else
temp := head
while next of temp is not head, do
temp := next of temp
done
next of node := head
next of temp := node
head := node
end if
End
删除操作
下面的代码演示了基于单链表的循环链表中的删除操作。
deleteFirst():
Begin
if head is null, then
it is Underflow and return
else if next of head = head, then
head := null
deallocate head
else
ptr := head
while next of ptr is not head, do
ptr := next of ptr
next of ptr = next of head
deallocate head
head := next of ptr
end if
End
显示
下面的代码演示了在循环链表中显示列表操作。
display():
Begin
if head is null, then
Nothing to print and return
else
ptr := head
while next of ptr is not head, do
display data of ptr
ptr := next of ptr
display data of ptr
end if
End
要了解它在C语言中的实现,请 点击这里.
3.Tips
本周重新学习时间管理
要点如下:
做好两个计划表:
- 规划,是制定出实现目标的有效路径,备忘,则可以帮助你执行时方向清晰、全情投入
- 计划工具一:项目管理表,把复杂项目分拆子项目,并设定截止日期;
- 计划工具二:日历表,重要的事先安排进日历,在计划中留出一定的缓冲地带,做好日计划。
把时间变成产出:
- 提升行动力的办法,就是把任务拆分成动作
- 快速行动的四字诀窍:转、做、存、扔
- 学会心态建设,跟同伴交流克服拖延
敏捷工作法,让计划赶上变化:
- 不要把时间浪费在努力工作中,避开完美主义、范围蔓延、返工三个时间陷阱
- 使用敏捷工作法:
-建立“最小可交付”意识,在早期拿出能够给需求方看的初级版本
-寻求对方的反馈,然后进行迭代,手里始终只留一个任务。
如何跟忙碌相处:
- 忙碌的人跟悠闲的人比起来,大概率更靠得住,行动力和能力都更强
- 避开内卷化忙碌,不要长时期停留在一种简单的自我重复的状态
- 形成自驱式忙碌:
第一,你得有一个属于自己的目标
第二,给成长留出足够的投入
第三,跑出一个小循环,制造机会让自己尝到甜头。
重点:理论和道理都非常好和正确,关键有没有行动?
4.Share
本周分享内卷化
内卷化(involution),又译为“过密化”,指“农民在人口压力下不断增加水稻种植过程中的劳动投入,以获得较高的产量。然而,劳动的超密集投入并未带来产出的成比例增长,出现了单位劳动边际报酬的递减“的现象。
感想:
- 创新和提升产值是企业发展的推进器,警惕企业“内卷化”现象。
- 自身也需要不断提升能力,避免吃老本,警惕自身“内卷化”现象。