备忘录 | ToDoList
Leetcode刷题,不急,慢慢学 2025.04.08-? // 任务优先- [ ] 推进 Mathatical Thinking 课程 2025.06.26-? qt作业三 2025.06.13 恢复 LALC 的 pr 维护事项 2025.06.13-17 完成可视化的报告 2025.06.13-14 紧急备战**考试 2025.06.12 完成数据库安全的报告 2025.06.06-2025.06.07 完成编译原理期末考试(垂死挣扎) 2025.06.05 调整博客首页,隐藏像 Leetcode Daily 隐藏这样偏向记录形式的文章 2025.06.03
【Introduction to Mathematical Thinking】Lecture-3-implies
前言 该课程可以在 coursera 网站上免费学习,具体课程的链接就点这里跳转。 陆爻齐不太指望学完这门课就能让自己走向人生巅峰(笑,只是对于像这种方法论类型的比较感兴趣,而且也是一个很好的锻炼英语的机会 :) 正文 本节的内容是介绍了 implies,或者应该叫包含、蕴含。 举个例子来说明比较好,A⇒B,表示 A 蕴含 B,这里的 A 和 B 分别代表一个表达式。 注意,A 和 B 不一定要有“因果关系”,比如“他很好看”⇒“1+3=4”这种也算蕴含,而且还是正确的(原因后面会补充)。 蕴含的 True 和 False 和上一节一样,这个逻辑符号的式子也有 True 和 False 的结果,虽然结论是中学学过的,但为什么这样还是值得记录一下。 A⇒B,A 是前因(先前假设),B 是后果,如果两者都为真,那么结果就是真吧,像是N>7 ⇒ N^2>40。 但是如果 A 和 B 毫无关联会怎样呢?1+2=3 ...
一起来学Python基础|LearnBasicPythonTogether
前言 发现 Python 写起来比 C++ 爽多了,以后写 Leetcode 和其他程序,只要对性能和应用场景没有特殊要求,就只用 Python 啦!(蛇堕力,悲) 总之,下面的内容是对学习了 《Python编程-从入门到实践》 基础部分的小结,不是那种事无巨细的笔记,而是学习中印象比较深刻的部分。(也就是对于本人比较新的部分) 原计划每章写一个博客来记录,发现大部分内容已经在 C++ 那边烂熟于心,只要补充 Python 特色的实现方式和小部分新特性就好。 由于下面内容可能涉及练习的剧透,所以想要尽可能地发挥这本书的学习效用的话,建议自行学习完成再看本文。 正文 首先,这是练习存放的对应仓库地址 如果仔细看的话,会发现练习不全,因为有些练习陆爻齐觉着与其它练习考察重复,或者他们是陆爻齐已经十分熟悉的内容。 字符串去除前后空格 很多时候,我们有去除字符串前面或者后面的空格的需求,这个时候就可以使用下面的例子中展现的 strip 系列函数。 1234name = "\tWang \n Xiao\tMing ...
【Introduction to Mathematical Thinking】Lecture-2-Basic-Combinators
前言 该课程可以在 coursera 网站上免费学习,具体课程的链接就点这里跳转。 陆爻齐不太指望学完这门课就能让自己走向人生巅峰(笑,只是对于像这种方法论类型的比较感兴趣,而且也是一个很好的锻炼英语的机会 :) 正文 总得来说,要学会 mathematical thinking,首先得让语言变得严谨无歧义,一种方法是采用数理符号来实现。毕竟日常对话的歧义是通过大量上下文和背景知识来消除歧义,而当我们探索未知的边界(也就是学习研究)时,可没有这样方便的环境。 关于作业 作业是用来引领我们尝试不同方式思考的引子,所以不用专注于得到作业的答案,而是尽可能地通过各种思考来解决问题。 And 与,在逻辑中表示两块部分观点一致,或者说相关。 但是日常生活中有一点歧义,也就是无意义的补充,比如“I took a bag, and I ate some bread.” 带了一个包与吃了些面包不一致,甚至不相关,但就是会这么说,这样的表述在逻辑中不会出现。 在说明一个逻辑时,我们可以列出他的组合表来认识他,下面的 &...
【Introduction to Mathematical Thinking】Lecture-0-and-Lecture-1-Background
前言 该课程可以在 coursera 网站上免费学习,具体课程的链接就点这里跳转。 陆爻齐不太指望学完这门课就能让自己走向人生巅峰(笑,只是对于像这种方法论类型的比较感兴趣,而且也是一个很好的锻炼英语的机会 :) 正文 本次笔记记录了学习 Lecture 0 、Lecture 1和阅读材料 Background Reading 的内容。 第一节课都会讲讲这门课到底讲啥,这门课的重要性,开设的理由什么的。 本课的目标,重要性,也就是开设的理由 让学生学会使用 mathematical thinking,直译过来应该叫“数学思维”。 在大学之前,我们所学的中学及之前的数学,都可以叫 “think inside the...
【Leetcode Daily】LeetcodeDailySummary-滑动窗口小结
类别 该算法主要分为定长滑动窗口和不定长滑动窗口,前者由于窗口大小固定,往往是来求窗口内某种极值,极大、极小或者其它事物,后者则专注于求子数组/子字符串的数量。 不定长滑动窗口有的会尽可能追求窗口长度的极值,又会因为题目,细分几个种类,比如越长越满足、越短月满足,或者刚好满足的情况。 定长滑动窗口 基本的思路是,先是初始化一个定长的窗口,初始化到窗口长度减一,然后在循环过程中,先加入新元素,达到窗口满足大小的情况,然后自行检查窗口是否满足题目条件,并更新记录数值。随后退出最旧的元素。 示例题目与更为详细的思路讲解在博客 【Leetcode Daily】1456定长子串中元音的最大数目 不定长滑动窗口 与定长滑动窗口的不同之处在于,不需要开始先把窗口调整至某个状态,只需要不断地加入元素,检查条件,然后在不满足条件时,持续退出旧元素,直到再次满足条件。 至于几种分类,对于求满足条件窗口长度,只要每次循环持续更新记录数值的最大或最小就好,像是博客 【Leetcode...
【一起来学 CMake】CMakeCookBook-开始编译,然后执行【Learn CMake Together】
前言 这是一个陆爻齐主要借助资源 CMake Cookbook 学习 CMake 的系列记录。 https://chenxiaowei.gitbook.io/cmake-cookbook 不定时更新,也不一定全按上面的章节顺序走,用到哪学到哪罢了:) 运行环境:VSCode + CMake + MinGW 正文 首先在项目新建一个名为hello.cpp的文件,内容是 123456789#include <iostream>using namespace std;int main() { cout << "Hello World!" << endl; return 0;} 上面是十分甚至有九分标准的代码,要将这个代码编译执行, 在IDE 上就是点一下或者两下按钮的事,但在 VSCode,这事没那么轻松。 下载完 C++ 之类的拓展后,虽然右上角出现了运行和调试的按钮,但对多文件不管用,这是因为 VSCode 还需要你编辑 .vscode 文件夹内的 json...
【一起来学 Git】LearnGitBranching-完结撒花与感言【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文 经过大概一周有余的更新,这个系列就算是完结了(8787878787),对陆爻齐自身而言算是受益匪浅啊。 其实吧,陆爻齐原本最熟悉的部分大多在【一起来学 Git】LearnGitBranching-基础篇【Learn Git Together】和【一起来学 Git】LearnGitBranching-Push&Pull-Git远程仓库【Learn Git Together】,前者很多命令本地用,后者主要使用 pull 和 push。...
【一起来学 Git】LearnGitBranching-关于origin和它的周边-Git远程仓库高级操作【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文 做一名仁慈的独裁者一定会很有趣…… 好奇怪的引语,不过本章说是高级操作,陆爻齐在此前 git 出现奇怪问题的时候,向 gpt 请教过,给出类似的代码,有时奏效有时又寄,所以还是十分建议学习的:) 推送主分支 这章要展示的是,开发者从远程仓库获取主分支的更新,然后在本地其它分支开发完后,如何在主分支上完成更新并推送的步骤。 获取主分支的更新,为了保持线性的提交历史,就可以采用git pull --rebase,注意,先切换到主分支再用...
【一起来学 Git】LearnGitBranching-Push&Pull-Git远程仓库【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文 是时候分享你的代码了,让编码变得社交化吧 事实上,远程仓库的部分才是大部分人使用 Git 的用途。对于自己的本地小项目,多数人倾向于采用比较“简单”的本地复制文件存档。只要这个项目还在开发迭代,过不了多久就会发生版本混乱。 Git Clone 正如网站中所说,网站演示效果与实际不符,输入git clone命令后,并非从远程创建本地复制,而是在本地创建一个远程仓库的副本。 这个命令用得可太多了,陆爻齐需要本地复现别人的模型,或者试下别人的开源代码,都需要用...
【一起来学 Git】LearnGitBranching-高级话题【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文-高级话题 只为真正的勇士 说是高级话题,实际上就是一些 Git 版小测,把之前的命令做了一点点的变化 多次 Rebase 题目说的很明白,“把所有这些分支上所做的工作都通过 rebase 合并到 main 分支上”,无需多盐。 对于 rebase 为什么有这样的效果,可以看看此前基础篇相关解释(【一起来学 Git】LearnGitBranching-基础篇【Learn Git Together】) 两个 Parent 节点 此前没怎么提到 parent...
【一起来学 Git】LearnGitBranching-杂项【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文-杂项 Git 技术、技巧与贴士大集合 标题党喵,要是我来总结就是:1. 如何高效修改前几个commit;2. Tag;3. Describe 只取一个提交记录 & 提交的技巧#1 & 提交的技巧#2 由于前三个部分说的都是一件事,就合并力。 都是为了解决:如果想修改一个处于“中间”的 commit,该如何处理? 从 【一起来学 Git】LearnGitBranching-移动提交记录【Learn Git...
【一起来学 Git】LearnGitBranching-移动提交记录【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文 自由修改提交树 作者在这表示之前的内容(【一起来学 Git】LearnGitBranching-基础篇【Learn Git Together】、【一起来学 Git】LearnGitBranching-高级篇【Learn Git Together】)已经涵盖了 Git 90% 的功能,但是剩下 10% 的功能正是为一些复杂的工作而准备的。 Git Cherry-pick 正如本篇的引语一般可以自由地修改提交树(的一点),可以把任意 commit...
【一起来学 Git】LearnGitBranching-高级篇【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文-高级篇 要开始介绍 Git 的超棒特性了,快来吧! 该章节的内容是陆爻齐从未接触过的,不过这也正是学习的意义啊(感慨) 分离 HEAD 这里的 HEAD 就是 git 操作时正处于的指针位置,一般情况下,HEAD 会跟着分支指针走,比如在【一起来学 Git】LearnGitBranching-基础篇【Learn Git Together】中,每次输入命令git checkout main,实际上就是让 HEAD 和 main...
【一起来学 Git】LearnGitBranching-基础篇【Learn Git Together】
前言 这是一个陆爻齐跟着 Learn Git Branching 网站学习(复习) Git 的系列记录,会跟着其内容的步伐做学习记录,并结合自身浅薄的知识积累和几乎为零的实践经验做一点点的补充。 https://learngitbranching.js.org 私以为,该网站比较适合有一点 Git 基础来学习,如果是完全零基础,还是看看 Git 官网教程,在 GitHub 这样的代码托管网站走一遍流程比较好。 注意,由于下面的笔记不可避免地涉及到过关的答案,所以强烈建议,自行体验过网站内容再看本文。 正文-基础篇 循序渐进地介绍 Git 主要命令 太主要了,私以为省略了不少,这就是为什么说先看 Git 的官网教程比较好。嘛,下面也会把省略的部分简单带带的:) Git Commit commit,翻译过来就是“提交”,相当于为当前的 Git 仓库下的文件做了一个存档,而且每次 commit 并非对所有文件的拷贝,而是会保存该版本与上个版本的差异作为提交记录。 命令直接就是git commit,实际上一般 commit...
【软考】下午题13-试题1-4,6-中级软件设计师备考笔记
试题一 数据流图 数据流图 英文名 DFD 本质上就是描述数据流动的图 {:height 283, :width 512} 问题一 问图中的实体是什么 E1…… 方法:对着子图和说明找 问题二 问图中的数据是什么 D1…… 方法:对着子图和说明找 如果是问数据存储,在没有找到对应名字时,可以自拟符合名称 问题三 补充数据流,看分值,可能一分一条或两分一条 方法: 父图子图平衡logseq.order-list-type:: number对比父图和子图的数据流 加工既有输入数据流也有输出数据流logseq.order-list-type:: number 根据说明检查子图logseq.order-list-type:: number 问题四 拓展题,随缘得分 有问父图与子图的平衡,也就是数据流的属性、名字相同,数量相同,若父图有一条对应子图多条数据流,则也算平衡 试题二 数据库设计 基础知识 父实体与子实体 属性简单了解,比较少考{:height 338, :width 518} 联系分别是1对1,1对多,多对多多对多对多 1对多对多 关系模式 ...