Loading repository data…
Loading repository data…
SummerGift / repository
记录学习浙江大学《数据结构》课程的学习笔记和练习题, 以及在工作中常见数据结构的整理
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
单纯的学习数据结构本身是不够的,结合工作中实际工作项目来实践才能所学的知识融会贯通。因此我决定添加数据结构工作应用章节。在 RT-Thread 中用到了许多常用的数据结构,当我发现可以用通用双向链表来实现内核对象管理的时候,我在心底里感叹这种数据结构如此奇妙。通过阅读高质量的源码,可以提高学习效果,这是一种很棒的做法。看到一种数据结构的巧妙应用,回过头来再继续学习总结,我相信这个过程可以对提高自身的水平有很大帮助。
数据结构课程讲述的内容是比较全面的,除了基本的数据结构和算法的概念,算法复杂度的计算还有递归专题,抽象数据类型等。数据结构从基本的表、堆栈、队列、一直讲到较为复杂的树、图、散列表,另外讲述了一些常用的排序算法,并且在每一章之后都提供了足够多的练习题,为了写这些练习题真的是绞尽脑汁。
在我从事的嵌入式工作中,常用的数据结构有双向链表、动态数组、队列、堆、栈、散列表,常用的算法一般就是排序和查找。但我觉得像是树、图这样的数据结构还是要去学的,侯捷先生说过:“学从难处学,用从易处用”。在学习的过程中一定要精到不能再精为止。
数据结构和 C++ 的学习从建立工程开始提交练习代码到18年6月已经有半年时间了,说真的坚持真的不容易,即使中间有曲折,无论如何我已经下决心要把这件事做到底,把这项技能掌握好。无论需要学习几遍,不管到什么时候,这件事必须要有始有终,继续加油。
本章介绍在 RT-Thread 操作系统中所使用的数据结构,研究如何使用这些常见的数据结构来实现复杂的系统功能。
All code will be marked ```Language ...code... ``` when the lecture is read in raw format. When viewed through Github and Pandoc, it will be color coded based on the language as such:
#include <stdio.h>
int main(void){
char * foo = "bar";
printf("%s",foo);
return 0;
}
MinGW.org GCC-6.3.0-1.