美文网首页
ARTS 第3周

ARTS 第3周

作者: RealityGamer | 来源:发表于2019-04-07 22:05 被阅读0次

    1. Algorithm

    题目: Add Two Numbers

    You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.

    You may assume the two numbers do not contain any leading zero, except the number 0 itself.

    Example:

    Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
    Output: 7 -> 0 -> 8
    Explanation: 342 + 465 = 807.

    Solution

    时间复杂度: O(n)
    空间复杂度: O(1)

    # Definition for singly-linked list.
    # class ListNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.next = None
    
    class Solution:
        def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
            dummy = ListNode(0)
            current, carry = dummy, 0
            while l1 or l2:
                val = carry
                if l1:
                    val += l1.val
                    l1 = l1.next
                if l2:
                    val += l2.val
                    l2 = l2.next
                carry = val // 10
                current.next = ListNode(val % 10)
                current = current.next
            if carry == 1:
                current.next = ListNode(carry)
            return dummy.next
    

    2. Review:

    A Smart Programmer Understands The Problems Worth Fixing
    这篇文章讲的主题就像题目所说的: 一个聪明的程序员应该懂得什么样的问题才值得去解决。聪明的程序员不是那种可以解决所有问题的程序员,而是那种懂得什么样的问题值得去解决的程序员。程序员需要明白他能够带来的价值,当碰到问题的时候要学会权衡,这个问题值不值得去花费时间和精力去解决,要找到那个tradeoff,要去思考投入产出,而不要天真地认为所有的问题都要解决,只要碰到问题就要去解决。

    3. Tip:

    Treemacs
    treemacs是emacs的一个文件浏览工具,之前一直用的是neotree,但是neotree的功能比较单一,treemacs提供了一个非常实用的功能: 工作区,创建一些自己比较常用的工作区,这样的话,在不同的个工作区之间切换会非常高效。唯一有一点不足的是,不能实时同步org文件的大纲,如果能实时同步的话就更爽了。

    4. Share:

    这周读了《逆商》这本书,不过还没读完,只看了前面部分的理论基础,后面的方法论部分还没开始看,就分享一下看过的内容以及自己的一些看法吧。

    我们每个人都会遭遇痛苦、困境和挫折等等我们所谓的逆境。这本书根据人们面对逆境的不同应对模式,把人分为了三类人: 放弃者、扎营者和攀登者。放弃者是那些害怕面对痛苦、失败和挫折的人们,总是逃避问题,不愿去解决问题,不管改变现状,他们最终只会面临更大的痛苦和失败;扎营者是刚开始也是攀登者,他们在一开始会迎接痛苦和挑战,但是他们在取得一定进展的时候,就会选择止步不前,会转向守护已有的,停止成长;而攀登者是始终都在积极面对痛苦和挫折,他们的结果会越来越好,他们相信一定会得到自己想要的。

    我们每个人都会遭遇各种逆境,不管是在社会中、职场中还是在个人的其他方面。即使是我们学习一个技能也是如此,有的人根本就不愿意去学习和成长,他们害怕将要面对的痛苦和挫折,有的人在开始的时候会愿意付出和努力,积极面对痛苦和失败,但是在中途就会放弃,就会止步不前,只有少数的人会坚持下去,会去积极地面对各种挫折,会去解决各种问题,直到实现了自己的目标。

    其实我们越是害怕什么,越会得到什么,我们越是害怕失败和痛苦,就会经历更多的失败和痛苦,我们的结果往往会更不好,我们只有去直面恐惧、痛苦和失败,去跨越一道又一道的坎,我们的路才会越来越宽,过去的痛苦对我们来说已不算什么,我们有能力去面对和跨越更大的挑战。所以面对恐惧、痛苦和失败最好的策略不是逃避,而是直面直到超越它们。

    相关文章

      网友评论

          本文标题:ARTS 第3周

          本文链接:https://www.haomeiwen.com/subject/mvmeiqtx.html