码农需知的基础算法

近些时日面试知名公司得到的痛心教训,不懂数据结构和算法的码农注定只是码农,不能称得上称职的工程师!最近开始涉猎算法和数据结构的相关知识,趁此机会写下自己的心得。

一、排序

1.选择排序:


码农需知的基础算法_第1张图片

2.交换排序:

码农需知的基础算法_第2张图片
码农需知的基础算法_第3张图片

3.插入排序以及改良版:

码农需知的基础算法_第4张图片
码农需知的基础算法_第5张图片
码农需知的基础算法_第6张图片

二、查找

1.二分查找:递归

码农需知的基础算法_第7张图片

2.二分查找:非递归(循环)

码农需知的基础算法_第8张图片

三、节点遍历


码农需知的基础算法_第9张图片
码农需知的基础算法_第10张图片

四、数组去重


码农需知的基础算法_第11张图片
码农需知的基础算法_第12张图片

和算法紧密相关的两个概念:

时间复杂度:找出算法中的基本语句,计算基本语句的执行次数的数量级,用大写O记号表示算法的时间性能。

空间复杂度:存储算法本身所占用的存储空间+算法的输入输出数据所占用的存储空间+算法的运行过程中临时占用的存储空间。

你可能感兴趣的:(码农需知的基础算法)