数据结构与算法
SJian666
这个作者很懒,什么都没留下…
展开
-
算法小谈:枚举
一 概述在进行归纳推理时,如果逐个考察了某类事件的所有可能情况,因而得出一般结论,那么这结论是可靠的,这种归纳方法叫做枚举法。例如:我们如果要求一个小于N的最大素数,但是这里没有一个公式能根据N求出对应的素数,所以我们可以从N-1,N-2 一直往下递减,然后判断这个数是不是N的素数,直到找到为止。这样我们就把这个问题转化为一个枚举问题了。二 完美立方等式我们可以通过一个简单的...原创 2019-04-26 10:37:50 · 209 阅读 · 0 评论 -
数据结构——三大查找
前言在之前的两篇文章中,我们总结了八种经典的排序算法,分别为直接插入排序,希尔排序,简单选择排序,堆排序,冒泡排序,归并排序,快速排序,基数排序,并分别用python和C++来实现每个排序算法。在这篇文章中,我们将继续学习数据结构中的三种常用的查找算法:二分查找,块查找,哈希查找。二分查找二分查找作为最简单的一种查找方式,已经被很多人应用。二分查找所查找的对象必须是一个有序数组,即如果...转载 2019-04-22 21:19:41 · 454 阅读 · 0 评论 -
算法小谈:递归
一:递归基本概念:一个函数调用它自身,就是递归如求n的阶乘的递归:#include<iostream>using namespace std;int factorial(int n) { if (n == 1) return 1; else return n * factorial(n - 1);}int main() { int n;...原创 2019-04-26 14:36:21 · 542 阅读 · 0 评论 -
数据结构——八大排序算法(1)
前言数据结构中的排序分为内排序和外排序。其中内排序是指将排序记录存放在计算机随机存储器(内存)中进行的排序过程,而外部排序因为待排序记录数量很大,以至于内存不能一次容纳全部记录,所以在排序过程中需要对外部存储器进行访问的排序过程。在衡量两者排序的效率上,内部排序衡量的标准为时间复杂度,外部排序衡量的是读写外存的次数。我们耳熟能详的八大排序算法就属于内排序。如下图所示:下面...原创 2019-04-18 18:18:32 · 289 阅读 · 0 评论 -
数据结构——八大排序算法(2)
前言在上一篇文章中,我们学习了八大排序算法中的前四种排序,分别是直接插入排序,希尔排序,简单选择排序,堆排序。接下俩,我们将继续学习剩下的四种排序算法,分别是冒泡排序,快速排序,归并排序,基数排序。冒泡排序冒泡排序思路比较简单:将序列当中的左右元素,依次比较,保证右边的元素始终大于左边的元素; ( 第一轮结束后,序列最后一个元素一定是当前序列的最大值;) 对序列当中剩...原创 2019-04-19 15:11:13 · 180 阅读 · 0 评论