少有人走的路
强烈向大家推荐这本书《少有人走的路》。
自律健全心理的基本前提,自律的根基:「我是个有价值的人」。
自律的四原则:1. 解决问题 2.承担责任 3.尊重事实 4.保持平衡。
神经官能症:让自己痛苦。人格失调:让别人痛苦。人格神经官能症:都痛苦。
你不能解决问题,那么你就会成为问题。
作为成年人,整个一生都充满选择和决定的机会,接受则变为自由人。
尊重事实,绘制人生地图,难处不在于从头开始,而在于要不断修订,不要故步自封。
移情:抱残守缺,与现实脱节。坚守过时的观念,对现实漠然置之。
献身真理意味着自我反省,敢于接受其他「制图者」的挑战。
不讲白色/黑色谎言。更要限制性的表达个人意见。
在需要、目标、责任之间保持平衡。其最高原则就是「放弃」。但是先要确立自我,才能放弃自我。放弃固有人格、行为模式、人生理念。
爱爱:为了促进自我和他人心智成熟,而具有的一种自我完善的意愿。
区别爱与不爱:1.当事人的意识思维和潜意识思维的目标是否一致。 2.爱是长期、渐进的过程 3.真正意义上的爱,是爱自己也是爱他人。 3.爱是自我完善也是帮他人完善。
爱是行动,不是空想。爱是一种客观的存在,不是头脑的主观 ...
Matplotlib的常见用法
plt.subplots()返回一个包含figure和axes对象的元组。因此,通常使用fig,ax = plt.subplots()将元组分解为fig和ax两个变量。
首先我们先介绍下Figure、Axes和Axis吧。具体区别看下官方的图。
Figure是整个「画板」,也就是红色的框。在上边可以画多个图像(Axes),也就是蓝色的框。而蓝色的框才是具体的坐标轴(Axis)。
Axes是Axis的复数,Axes在这里指的是一套坐标轴,而Axis才是指的具体单个坐标轴。何为「一套坐标轴」、「单个坐标轴」呢?有人这么说:
Axis 指 x、y 坐标轴等(如果有三维那就还有 z 轴),代表的是 “坐标轴”。而 Axes 在英文里是 Axis 的复数形式,也就是说 axes 代表的其实是 figure 当中的一套坐标轴。之所以说一套而不是两个坐标轴,是因为如果你画三维的图,axes 就代表 3 根坐标轴了。所以,在一个 figure 当中,每添加一次 subplot ,其实就是添加了一套坐标轴,也就是添加了一个 axes,放在二维坐标里就是你添加了两根坐标轴,分别是 x 轴和 y 轴。所 ...
octave for Mac安装、使用
安装octave首先,你的Mac上要安装好Homebrew。如果你不知道你的电脑装没装Homebrew,那你可以运行命令brew -v。如果显示下图则说明已经安装过。
如果没有的话,运行这条命令安装Homebrew。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
也可以去Homebrew官网了解下。官网的介绍很明白。
下面直接运行命令brew install octave,然后等待安装完即可。整个安装过程可能很长,耐心。
octave基本使用GUN Octave官网是这么介绍的,Octave是一门专门用于科学计算编程的语言(Scientific Programming Language)。
GUN Octave 是一门最初被发明用于数值计算的高级语言,它使用一种与Matlab几乎完全兼容的语言,为解决数字上线性和非线性问题、执行其他数 ...
贰零贰零年十一月
11.01到了最后一步,一定要「不要脸,不要钱,不要命」,懂这九个字,大多数事情都有机会去做。
当孩子的学识和见识远超父母的时候,亲子相处模式就应该做出相应的调整。
父母应该停止对孩子的人生提供一些孩子根本就不会遵从的建议,而应该把孩子当做资源,向孩子咨询自己的人生困惑,这才是孩子回报父母的方式。
11.02注释应该是注释Why,而不是How和What。
11.03摸鱼结束。
11.04
11.05
11.06不要等一件事情做不下去了,才开始准备。
11.07「What I cannot create, I do not understand.」
只有创造一个东西,才算真正弄懂一个问题。
11.08//…
11.09《风声》。
11.10现在已经找不到大一时做编程题的感觉了。可以静下心来半天、一天甚至是一周来想解法。现在浮躁的很。
11.11不要网贷。找熟人借钱会觉得不好意思。网贷就没有这个阻碍,反而还可能会加剧网贷频率。而且,还钱还有个延后期,会有个「寒号鸟」效应。
「寒号鸟」的故事:
山脚下有一堵石崖,崖上有一道缝,寒号鸟就把这道缝当作自己的窝。石崖前面有一 ...
刷题「哈希表」相关
数组中两个数的和为给定值(简单)暴力算法在这里就不讲了。
这里介绍下用「哈希表」来解决此题。
为什么会想到哈希表呢?这是因为
class Solution { public int[] twoSum(int[] nums, int target) { HashMap map = new HashMap(); for(int i = 0; i < nums.length; i++) { int n = target - nums[i]; if(map.containsKey(n)) { return new int[] {(int) map.get(n), i}; } map.put(nums[i], i); } throw new IllegalArgumentException("null"); ...
刷题「数组与矩阵」相关
把数组中的0移到末尾(简单)暴力解法就不说了。下面介绍下双指针的思路。
现在的思路就是我们假想又开辟了一个新的数组,但是这个新数组和原数组占用同一片空间。也就是我们让原数组具有「双重人格」。一会表示原数组,一会表示我们假想的新数组。
新数组的内容为原数组中的非零元素。并保持相对顺序。由指针lastNonZeroFoundAt来控制新数组。
两个指针,一个用来遍历原数组,一个lastNonZeroFoundAt用来操作新数组,初始值为0。
程序开始,当我们遍历到一个非零元素就将该元素赋值给nums[lastNonZeroFoundAt],然后lastNonZeroFoundAt ++。
最后,将新数组的非零元素后面填充0。这里我们并没有将0移动,我们移动的是非零元素。所以将非零元素移到前面以后,后面的就是0。
class Solution { public void moveZeroes(int[] nums) { int lastNonZeroFoundAt = 0; for (int i = 0; i < nums.leng ...
刷题「栈和队列」相关
用栈实现队列(简单)栈的特点是「先进后出」。队列的特点是「先进先出」。现在要求使用后进先出的栈实现一个先进先出的队列。也就是要保证栈顶的元素始终是队首的元素。
方法一:
我们可以用两个栈来实现。其中一个栈用来存储数据,我们称为「数据栈」,另外一个栈用来辅助将数据倒序push进第一个栈的,我们称为「辅助栈」。因为,这样可以让数据栈的数据保持新来的数一直在栈顶,这样可以实现「先进先出」。
画图如下:
class MyQueue: def __init__(self): """ Initialize your data structure here. """ # 数据栈 self.stack1 = [] # 辅助栈 self.stack2 = [] # 数据的个数,用来指向栈顶元素 self.size = 0 def push(self, x: int) -> None: & ...
刷题「树」相关
递归树的高度(简单)采用深度优先遍历。
当root is None时,则return 0。
否则,返回左、右子树深度的最大值 + 1。
如果当前结点为空,则其高度为0。否则,就分别求其左、右子树的高度,然后取两个高度中的最大值 ,加1, 就是当前结点的高度。
PythonJavaclass Solution: def maxDepth(self, root: TreeNode) -> int: return 0 if not root else max(self.maxDepth(root.left), self.maxDepth(root.right)) + 1class Solution { public int maxDepth(TreeNode root) { if (root == null) { return 0; } return Math.max(maxDepth(root.left), maxDepth(root.right)) + ...
刷题「链表」相关
找出两个链表的交点(简单)该题要求时间复杂度为O(N)。如果想用两个指针分别指向两个链表,然后遍历求解,这样就需要两层循环,显然不符合时间复杂度O(N)的要求
对于正确解法的理解可以看下这张图⬇️
class Solution: def getIntersectionNode(self, headA: ListNode, headB: ListNode) -> ListNode: ha, hb = headA, headB while ha != hb: ha = ha.next if ha else headB hb = hb.next if hb else headA return ha
*另外补充下,如果只是判断两个链表是不是有共同结点,可以这么做
将两个链表首尾相连,然后判断后一个链表是不是循环链表
直接比较两个链表的尾结点相不相等
链表反转(简单)这里要用到两个指针,一个指向当前结点,一个指向新链表的头结点(当前结点的上一个结点)
class Solution: ...
贰零贰零年十月
10.01「可是人这东西是要把自己附在什么上面才能生存的。」大岛说,「不能不那样。你也难免不知不觉的如法炮制。如歌德所说,世间万物无一不是隐喻(metaphor)。」
幸福是寓言,不幸是故事。
10.02
10.03读书。看剧。
10.04不太重要的人和太重要的人,都不需要经常见。
不太重要的人,你只需要给他亮出「肌肉」,告诉他这里有利益可以交换,足够了。不用和他们谈什么感情,纯属浪费。
太重要的人,平时各忙各的,见不见面无所谓,需要的时候,自然在那里。这种感情,无需耗费精力维系。
三观不一致的人,很难走到一起。朋友是吸引来的,不是经营来的。
另外,我们没有自己想象的那么脆弱,脆弱到需要那么多的朋友。
强烈推荐《Person of Interest》
10.05没有启发性的东西。
10.06行有余力再读书。
我们应当把时间、精力,全部都投入到那个关键事情上,尽快让它达到阈值。然后再去学习其他东西。否则,就会出现自己的事情没做好,学习其他东西也没收获。能力不够时,是撑不起那些从公众号、星球等看到的见识的。
10.07这也太魔幻了吧。我买到了一个屏幕有白斑的iPad,我又卖 ...