一、数据结构与算法的重要性

1.数据结构不只是用于组织数据,还极大地影响着代码的运行速度。对数据结构有了深刻的理解,并明白它们对程序性能方面的影响,就能快速优雅地写出代码,从而使软件的运行更加快速流畅。

2.了解算法,了解底层方法和框架等如何使用算法,如何极大提高程序性能的,避免不懂算法而导致的各种问题出现。尽可能避免。

二、数据结构

1.数据结构是一种抽象的封装,计算机中的数据结构就是把一些基本的数据类型,融合成一些复杂的数据结构,入map、队列

2.数组属于最简单的数据结构,也是应用最广的数据结构。

3.栈、队列等数据结构都可以由数组演变而来。

4.数组、栈、队列、链表、树、图、堆、散列表;8种数据结构。

三、算法

1.算法分类:检索、插入、删除、更新、排序

2.时间复杂度分析

3.空间复杂度分析

4.八大经典排序算法(特性总结):

  

 

 5.基本算法:

  贪心算法、分治算法、回溯算法、动态规则。确切的说,他们是算法的思想,并不是具体的算法。

字符串匹配算法:BF算法、RK算法(简单);  BM算法和KMP算法(难理解、高效);多模式算法:trie树和AC自动机。

 

6.算法的实践运用

人工智能、大数据、

 

7.算法相关工具