【2024 Year-End Summary】C++自学分享

【2024 Year-End Summary】C++自学分享

 目录

[ C 语言 ]

[ 数据结构 ]

[ 算法 ]

[ C++ ]

[Linux]

[Mysql]

[Redis 文档学习]

[Docker 云原生]

[Git]

[Qt]


转眼大学就过了一年半,希望自己可以保持学习₍₍Ϡ(੭•̀ω•́)੭✧⃛


在刚上大一的时候用的是纸质笔记本,后来东西越学越多,就开始使用语雀文档,文章也有部分同步到 ZEEKLOG 上了,很高兴能够对大家有所帮助~

博客之星的文章一直不知道写些什么,想着对专栏做一个整理叭

下面的标题/网课名 就是 学习链接的传送门,自学的资料也都是免费的,开头就不多说了,学就好啦


[ C 语言 ]

hh 这是多少小伙伴梦开始的地方

网课:

书籍:

  • C Primer Plus
  • C 和指针
  • C 陷阱与缺陷

[ 数据结构 ]

Data Structures[C++]

网课:

书籍:

  • 大话数据结构

[ 算法 ]

网课:

书籍:

  • 算法竞赛入门经典(刘汝佳老师)

[ C++ ]

网课:

手写 STL 的部分,其实也是一种对于数据结构的学习

当然网课还有各大培训班就不多说啦,可以按需找资源,找到适合自己的学习方法就好~

书籍:

  • C++ Primer Plus
  • Effective STL
  • STL 源码剖析

[Linux]

主要分为三部分:

  • linux 命令
  • 操作系统
  • 网络

linux:

网课:

书籍:

  • Linux 内核设计与实现
  • UNIX 环境高级编程

操作系统:

书籍:

  • 深入理解计算机系统
  • 现代操作系统

网络:

网课:

书籍:

  • 图解 TCP/IP
  • 图解 HTTP

[Mysql]

网课:

书籍:

  • MySQL 是怎样运行的

[Redis 文档学习]

网课:

书籍:

  • Redis 设计与实现
  • 官方文档

[Docker 云原生]

网课:

书籍:

  • 官方文档

[Git]


[Qt]


上面就是一些资料的分享~ 成为一名程序员肯定要掌握的更多,不管是知识层面的宽度还是深度,路漫漫其修远兮,保持着对学习的热爱,我们一起加油(◦˙▽˙◦)

提前祝看到这里的小伙伴新年快乐,新的一年里更上一层楼~

Read more

SHA-256 哈希破解工具技术解析

一、程序功能概述 一个针对 SHA-256 哈希值的密码破解工具,其核心功能是通过多种密码攻击技术,将给定的 SHA-256 哈希值反向还原为原始明文密码。该工具集成了字典攻击、模式攻击、暴力破解等多种方法,通过组合不同的攻击策略提高哈希破解的成功率,适用于安全测试、密码审计等场景(需在合法授权范围内使用)。 程序的核心目标是:接收包含多个 SHA-256 哈希值的文件(默认1.txt),通过内置的密码生成与验证逻辑,找到哈希值对应的原始密码,并将结果保存到输出文件(默认2.txt)。其功能覆盖了从数据加载、密码生成、哈希比对到结果保存的完整流程,同时包含进度跟踪与状态提示,提升用户对破解过程的感知。 二、核心数据结构解析 程序通过HashCracker类封装所有功能,类内定义了多个关键数据结构,用于存储状态、配置与结果,这些结构的设计直接影响破解效率与功能完整性。 1. 实例属性设计 属性名类型作用设计逻辑found_passwords字典(dict)存储已破解的哈希值与对应密码,键为哈希值,值为明文密码字典的键值对结构支持 O (1) 时间复杂度的哈希值查找,

By Ne0inhk
数据结构:链表进阶

数据结构:链表进阶

链表进阶 * 1. ArrayList的缺陷 * 2. 链表 * 2.1 链表的概念及结构 * 2.2 链表的实现 * 3.链表面试题 * 4.LinkedList的使用 * 5.1 什么是LinkedList * 4.2 LinkedList的使用 * 5. ArrayList和LinkedList的区别 1. ArrayList的缺陷 通过源码知道,ArrayList底层使用数组来存储元素: publicclassArrayList<E>extendsAbstractList<E>implementsList<E>,RandomAccess,Cloneable,java.io.Serializable{// ...// 默认容量是10privatestaticfinalint DEFAULT_CAPACITY =10;//...// 数组:用来存储元素transientObject[

By Ne0inhk

压缩感知信号重构的块稀疏贝叶斯学习(BSBL)算法:原理、实现与应用

一、引言 压缩感知(Compressive Sensing, CS)理论打破了奈奎斯特采样定理的限制,通过少量线性测量即可高概率恢复稀疏信号。块稀疏贝叶斯学习(Block Sparse Bayesian Learning, BSBL)是CS领域的重要算法,专门针对块稀疏信号(即信号的非零元素集中在少数连续块中)设计,通过贝叶斯框架建模块内相关性与稀疏性,显著提升了重构性能。本文将详细介绍BSBL的理论基础、算法实现、MATLAB仿真及应用场景。 二、BSBL算法理论基础 1. 块稀疏信号模型 块稀疏信号的核心特征是非零元素呈块状分布,例如时间序列中的连续脉冲、图像中的纹理块。数学上,块稀疏信号可表示为: x=[x1T,x2T,…,xBT]Tx=[x_1^T,x_2^T,…,x_B^T]^Tx=[x1T ,x2T ,…,xBT

By Ne0inhk

二分查找实战:LeetCode样题精解

1.lecode例题:https://leetcode.cn/problems/binary-search/solutions/980494/er-fen-cha-zhao-by-leetcode-solution-f0xw 2.解题思路: 找到target并返回target的索引下标,想用bisect二分。首先理解bisect的语法,给定一个单调不减的有序数组a,返回恰好严格大于x的下标位置。但这里有所区别,题目要求是刚好等于target的位置,所以我想用bisect变形。即题目转化为敲好大于等于target的下标位置,输入bisect(a,target-1) 刚开始我还输入了nums n m Q等数据输入板块,第一次做lecode题库,初尝新,知道了lecode不需要数据输入模块,前面两行代码是平台预设的框架,用户只需关注算法本身逻辑 3.过程错误与修正: a.过程错误 (前三行快读模板熟练敲打) b.错误分析解读(two methods) 1.from bisect import * 对应index=bisect_left(nums,

By Ne0inhk