学习数据结构与算法的心得体会

1.软件设计思想---分层

逻辑层:实现功能需求的,

物理层:用语言开发,性能方面,实现方式

如,数组(ArrayList)、单链表(LinkedList)(物理层)实现List接口(逻辑层),List接口具有一些增删改查的功能

二叉树,以数组形式实现

二叉树就是逻辑层,数组是物理层

树是一个非线性结构,映射到物理层以线性结构存储起来

 2.算法思想

(1)算法思想,就是在我们遇到问题时候,没有什么思路的时候,就可以朝这些方向去想,如;递归,动态规划,分治算法,查找

计算机里面的都是离散的,证明离散最好的方法,就是用数学归纳法

数学归纳法就是算法思想

递归,在逻辑层,是数学归纳法的体现;在物理层,是程序调用栈的使用

(2)遍历算法(每个节点只能访问一遍)

深度优先:

 广度优先:

按层次遍历,使用队列

原文地址:https://www.cnblogs.com/GumpYan/p/14034626.html