- 博客(4)
- 收藏
- 关注
原创 程序设计:算法和数据结构-笔记4——递归与分治
递归递归是指自己调用自己的函数。如下面的阶乘递归fact(int n){ if(n==1) return n; return fact(n-1)*n;}递归函数必须要设置出口,也就是上面的if(n==1) return n;分治分治的过程将问题分割成局部问题(Divide)递归地求解局部问题(Solve)将局部问题的解整...
2020-03-25 00:25:36 93
原创 程序设计:算法和数据结构 笔记3——搜索
概述搜索是从数据集合中找出目标元素的处理。线性搜索线性搜索是从数组开头顺次访问个元素,检查给该元素是否与目标值相等。相等则返回元素位置并结束搜索。如果检查完数组还没有发现目标值,则返回一个特殊值来说明。线性搜索的算法效率很低,但适用于任何形式的数据。二分搜索二分搜索算法可以利用数据的大小进行高速搜索。二分搜索的前提是 已经排序。思路:将整个数组(升序)作为搜索范围检查位于搜索范...
2020-03-25 00:24:39 215
原创 程序设计:算法和数据结构 笔记2——数据结构
概述栈(Stack)规则后入先出(Last In First Out,LIFO)操作push(X):在栈的顶部压入元素Xpop(): 从栈的顶部取出元素isEmpty():检查栈是否为空isFull(): 检查栈是否已满一般情况下,栈还具有 “引用栈顶元素”和”检查栈中是否含有指定数据“的操作队列(Queue)规则先入先出(First In First Out)操作...
2020-03-25 00:23:16 133
原创 程序设计:算法和数据结构 笔记1
基础篇基础概念复杂性评估时间复杂度:评估执行程序所需要的时间。可以估算出程序对计算机处理器的使用程序空间复杂度:评估执行程序 所需的存储空间。可以估算出程序 对计算机内存的使用程度“复杂度”大多数情况下是指的时间复杂度大O表示法:大O表示法是一种评估算法效率的“标尺”,以诸如O(n)O(n)O(n)、O(n2)O(n^2)O(n2)的形式表示算法的效率,其中n为问题的数据大小。常...
2020-03-21 14:44:43 138
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人