Echowind's Blog

世界上只有一种英雄主义,就是在认清生活的真相后依然热爱生活


  • 首页

  • 标签

  • 时间线

  • 书籍

  • 电影

  • 足迹

  • 关于

  • 日志

筵席散了

发表于 2023-05-14

西部半决赛 G6 第四节,落后 20 分。

如果这是 15 年或者 16 年,我会津津有味地期待着即将到来的绝地反击,空切和追身三分会很快把这点分差抹平,收下比赛。如果是 17-19 年,把球交给库里和 KD,我相信他们会用个人能力一点点追回比分。如果是 21 年和 22 年,库里也会带着这只球队紧咬到最后一刻。但很不幸,这是 23 年了,这四处漏风的破屋已经是勉力坚持着,随时可能崩溃。

核心成员逐渐老化,新老两代矛盾尖锐,薪资越来越离谱的同时,球队阵容却越来越畸形。我相信科尔,但他没有牌可以打了,不管怎么排列组合也弥补不了阵容的先天劣势,我相信库里,但他也没办法做得更多了,讲个笑话,这只球队 15 个人的名单,只有一个合格的进攻发起者,35 岁。这赛季的勇士已经被带到了不属于他们的舞台。

所以我关了直播,并没有在期待什么奇迹,只是不想看到最后几分钟的灾难表现和落寞身影。这一次,王朝真的结束了,至少属于水花,属于库汤追的时代结束了。

算法刷题(三) - 二叉树的结构

发表于 2023-03-21

树的子结构

一开始的思路是对 A、B 分别进行二叉树遍历,判断A.val数组是否包含B.val的数组,也过了绝大部分测试用例,但最后发现仍然有些特殊情况不符合这个条件,遂放弃。题解的这个递归的方法并不是很好想,若 B 是 A 的子结构,B 的根节点可以是 A 的任何一个节点,因此任务拆解为,先遍历 A 中的每个节点(isSubStructure),再判断树 A 中 以该节点为根节点的子树是否包含树 B(recursion)。

1
2
3
4
5
6
7
8
9
10
11
12
class Solution:
def isSubStructure(self, A: TreeNode, B: TreeNode) -> bool:
if not A or not B: # 约定空树不是任意一个树的子结构
return False
def recursion(A, B):
if not B: # 树 B 遍历完毕,说明 B 中节点在 A 中均有对应
return True
if (not A) or (A.val != B.val): # 树 A 先遍历完毕,说明 B 中存在 A 中没有的结构;或两棵树对应节点的值不等
return False
return recursion(A.left, B.left) and recursion(A.right, B.right)

return recursion(A, B) or self.isSubStructure(A.left, B) or self.isSubStructure(A.right, B) # 从 A 的根节点 / A 的左子树根节点/ A 的右子树根节点开始判断
阅读全文 »

算法刷题(二) - 链表操作

发表于 2023-03-12

反转链表

双指针,其中cur指向当前遍历节点,另一个prev指向当前节点的前一个节点,另外需要一个临时变量temp记录后一个节点,三个节点的指向交换即可。注意循环中的赋值顺序不能调换,先用临时变量记录后节点,再调转当前节点的指向,然后依次将prev、cur向后移动。

1
2
3
4
5
6
7
8
9
10
class Solution:
def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]:
prev = None
cur = head
while cur:
temp = cur.next
cur.next = prev
prev = cur
cur = temp
return prev

阅读全文 »

算法刷题(一) - 二叉树遍历

发表于 2023-03-11

以前刷过的题基本全忘光了,准备投暑期实习开始临时抱佛脚,赶紧复习起来。

阅读全文 »

SQL笔记(三) - LC1795 / 透视表

发表于 2023-02-22

Question

表:Products

1
2
3
4
5
6
7
8
9
10
11
+-------------+---------+
| Column Name | Type |
+-------------+---------+
| product_id | int |
| store1 | int |
| store2 | int |
| store3 | int |
+-------------+---------+
这张表的主键是product_id(产品Id)。
每行存储了这一产品在不同商店store1, store2, store3的价格。
如果这一产品在商店里没有出售,则值将为null。
请你重构 Products 表,查询每个产品在不同商店的价格,使得输出的格式变为(product_id, store, price)。如果这一产品在商店里没有出售,则不输出这一行。

阅读全文 »

SQL笔记(二) - LC1484 / LC1667 / 字符串操作

发表于 2023-02-21

Question

表 Activities:

1
2
3
4
5
6
7
8
+-------------+---------+
| 列名 | 类型 |
+-------------+---------+
| sell_date | date |
| product | varchar |
+-------------+---------+
此表没有主键,它可能包含重复项。
此表的每一行都包含产品名称和在市场上销售的日期。

编写一个 SQL 查询来查找每个日期、销售的不同产品的数量及其名称。
每个日期的销售产品名称应按词典序排列。
返回按 sell_date 排序的结果表。

阅读全文 »

SQL笔记(一) - LC608 / CASE / IF

发表于 2023-02-20

Question

给定一个表 tree,id 是树节点的编号,p_id 是它父节点的 id 。

1
2
3
4
5
6
7
8
9
+----+------+
| id | p_id |
+----+------+
| 1 | null |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 2 |
+----+------+
树中每个节点属于以下三种类型之一: - 叶子:如果这个节点没有任何孩子节点。 - 根:如果这个节点是整棵树的根,即没有父节点。 - 内部节点:如果这个节点既不是叶子节点也不是根节点。

写一个查询语句,输出所有节点的编号和节点的类型,并将结果按照节点编号排序。

阅读全文 »

癸卯寒假随笔

发表于 2023-02-09

从来完不成的计划

阅读全文 »

写在新年钟声之前

发表于 2022-12-31

很久没有来这里了,还在咳嗽,也不想写太多。八月底过完暑假,从家回到学校以后,因为一些问题的来回拉扯和折磨,精神状态一直不是太好。研二的日常也比较枯燥,加上对未来工作的焦虑,厌学的情绪越来越强,自己好像没有什么心思静下心来写东西。

阅读全文 »

地理信息处理时的坐标轴顺序问题

发表于 2022-11-05

最近在看一个包的源码的时候,发现作者对于地理坐标系转投影坐标系(基于 pyproj 库)的操作是这样写的:

1
2
3
4
# class Transformer: pyproj.transformer.Transformer
# class Proj: pyproj.proj.Proj
transformer = Transformer.from_proj(Proj(init="epsg:4326"), Proj(init="epsg:4549"))
x, y = transformer.transform(lon, lat)
我越看越觉得不对劲,因为我隐约记得,pyproj 库中涉及坐标轴的操作,都是默认采用南北向在前,即(lat, lon)或(y, x)的顺序,除非将always_xy参数指定为True。
阅读全文 »
123<i class="fa fa-angle-right"></i>

21 日志
12 标签
GitHub
© 2022 — 2023 Echowind
主题 — NexT.Mist v5.1.4