快速排序-----数据结构

设计思路:1.交换式-快速排序a)判断数组元素个数,如果数组元素个数小于等于1,无需对数组进行排序,直接返回;b)若数组元素个数大于1,将数组的最右边的元素作为本次排序的基准值;c)定义俩个下标值,一个为开始位置下标left,另一个为最终位置下标right;d)保证left<...

2018-06-01 12:43:57

阅读数:90

评论数:0

合并排序-----数据结构

归并排序设计思路:1.递归版本合并排序:        a)判断数组元素个数,如果数组元素个数小于等于1,无需进行排序,直接返回;        b)若元素个数大于1,进入递归函数,进行合并排序;        c)进入递归函数后,判断传入数组元素个数,判断条件同上;        d)若大于1,...

2018-06-01 11:45:56

阅读数:88

评论数:0

插入排序-----数据结构

插入排序设计思路:        1.判断数组元素个数,如果数据元素个数小于等于1,无需进行排序,直接返回;        2.若数组元素个数大于1,设置边界下标值bound = 1,将整个数组分为俩个数组部分,一部分为有序数组,另一部分为无序数组;        3.再定义一个下标值cur = ...

2018-06-01 11:14:26

阅读数:19

评论数:0

希尔排序-----数据结构

希尔排序设计思路:        1.判断数组元素个数,若元素个数小于等于1,直接返回,无需进行排序;        2.若元素个数大于1,进行排序值(排序值的选取直接会影响排序的时间复杂度),此次将采用希尔序列;        3.设置gap = size/2,以后每轮轮换将gap降为原来gap...

2018-06-01 10:51:07

阅读数:34

评论数:0

选择排序-----数据结构

选择排序也是排序算法中 最基础的排序之一。排序思路:        1.当元素小于等于1时,无需对数组进行排序;        2.当数组元素个数大于1时,按从前到后的顺序对数组元素进行排序;        3.首先设置一个边界值bound = 0,bound相当于将 数组分成两个数组,一个为有序...

2018-06-01 10:36:47

阅读数:15

评论数:0

冒泡排序-----数据结构

冒泡排序冒泡排序是算法排序中最基础的排序之一。排序思路:方法一:从后向前进行遍历,并进行相邻元素的比较,将较小元素放在较大元素之前,继续进行比较。每一轮比较结束后,都是 将基表数组中最小的元素,放置于本轮比较数组的最前面。方法二:从前向后进行比较,并进行相邻元素的比较,将较大元素放在较小元素的后面...

2018-06-01 10:17:53

阅读数:20

评论数:0

堆排序-----数据结构

        堆排序,是对堆特性的充分利用。如果想要对数组进行升序排序,则可以创建大堆;如果想要对数组进行降序排序,则可以创建小堆。本次博客主要讲述数组的升序排序,对大堆的创建与删除操作。        大堆排序的原理:首先对数组进行调整使其具有大堆的特性(子结点的关键字值小于父结点的关键字值)...

2018-05-30 09:01:40

阅读数:36

评论数:0

位图的基本操作-----数据结构

位图的基本操作        位图的出现在一定程度上降低了内存使用。应用场景:        当待处理数据超出内存处理范围时,将出现一系列的问题。此时,如果使用位图,就可以将内存的使用降至原使用内存大小的八分之一,极大程度的降低了内存不足所带来的诸多问题。位图初始化:        1.判断输入参...

2018-05-28 18:04:11

阅读数:109

评论数:0

开散列解决哈希冲突-----数据结构

开散列(也称为拉链法),也是解决哈希冲突的一类方法。应用场景:        当插入数值时,如遇到利用哈希函数对关键字进行分析时得到相同的哈希地址的情况,就需要相应的解决方法使具有相同哈希地址的不同关键字在允许插入的前提下都可以得到插入操作。拉链法就是将哈希地址的内容改为一个指针,将具有相同哈希地...

2018-05-28 17:29:01

阅读数:31

评论数:0

闭散列解决哈希冲突-----数据结构

闭散列解决哈希冲突闭散列(也称为开放地址法):一种解决哈希冲突的方法。应用场景:        对与闭散列的应用,我们可以举一个简单的实例:以函数为除留取余法的哈希函数进行构建哈希表,将会遇到剩余值相等的情况(如:有俩个关键字分别为2,1002,,最大范围为1000,则进行除模取余后,剩余值皆为2...

2018-05-28 16:49:35

阅读数:40

评论数:0

归并排序-----数据结构

归并排序的思路:        归并排序是通过“归并”这种操作完成排序的目的,将俩个或多个有序子表归并成一个子表。在归并排序中,此处将对二路归并进行分析。二路归并排序算法:        将俩个有序表直接归并为一个有序表的算法Merge(),设俩个有序表存放在同一个数组中的相邻位置上:arr[lo...

2018-05-22 16:15:51

阅读数:18

评论数:0

快速排序算法-----数据结构

快排基本思想:        在待排序的n个元素中任取一个元素(通常取第一个元素)作为基准,把该元素放入最终的位置上 (即归位一个元素),数据序列被此元素划分成俩部分:所有关键子比该元素关键字小的元素放置在前一部分,所有比它大的元素放置在后一部分,这个过程称作一趟排序。以后对所有的俩部分分别重复上...

2018-05-22 13:12:43

阅读数:23

评论数:0

机器人的运动范围-----数据结构

题目:        地上有一个m行n列的方格。一个机器人从坐标(0,0)的格子开始移动,它每次可以向上、下、左、右移动一个格子,但不能进入进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格(37,35),因为3+7+3+5 =18.但它不能进入方格(35,38),因...

2018-05-22 09:23:29

阅读数:51

评论数:0

替换空格-----数据结构

题目:    请实现一个函数,把字符串中的每个空格替换成“%20”.例如,输入“We are happy.”,则输出“We%20are%20happy.”。背景:        在网络编程中,如果URL参数中特殊字符,如空格、‘#’等,则可能导致服务器端无法获得正确的参数值。我们需要将这些特殊符号...

2018-05-21 18:43:49

阅读数:17

评论数:0

二维数组中的查找-----数据结构

题目:        在一个二维数组中,每一行都按照从左到右,递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输出这样的一个二维数组和一个整数,判断数组中是否包含该整数。测试用例:        提前写出测试用例这是一个不错的习惯,因为测试用例可以引导我们程序的编写与判断。  ...

2018-05-21 18:06:10

阅读数:41

评论数:0

希尔排序-----数据结构

一、希尔排序的基本思想                希尔(Shell)排序又称为缩小增量的排序,其基本思想是:把记录按下标的一定增量d分组,对每组记录直接插入排序方法进行排序,随增量的减小,所分成组包含的记录越来越多,到增量的值减少到1时,整个数据合成为一组,构成一组有序记录,则完成排序。注意:...

2018-05-17 10:31:58

阅读数:28

评论数:0

搜索二叉树的基本操作-----数据结构

        本次的搜索二叉树基本操作包括搜索二叉树的初始化、搜索二叉树的插入(递归实现)、搜索二叉树的查找(递归实现)、搜索二叉树的结点删除(非递归实现)1. 搜索二叉树的结构typedef struct SearchTreeNode { SearchTreeType key; // 关键码...

2018-05-15 22:56:15

阅读数:71

评论数:0

堆的基本操作实现

一、堆的概念        堆数据结构是一种数据对象,它可以被视为一棵完全二叉树结构。        堆的二叉树存储是:                最大堆:每个父节点都大于其孩子结点;                最小堆:每个父节点都小于其孩子结点。二、堆的实现1.堆的结构体typedef ...

2018-05-15 15:14:11

阅读数:84

评论数:0

数据结构-----查找(知识点)

一、查找的基本概念1.1 查找的概念        查找的定义是:给定一个值K,在含有n个记录的表中找出关键字等于K的记录。若找到,则查找成功,返回该记录的查找信息或该记录在表中位置;否则返回失败,返回相关的知识信息。        采用何种查找方法的相关因素如下:        i)使用那种数据...

2018-05-12 23:48:51

阅读数:97

评论数:0

数据结构-----二叉树的非递归遍历

一、先序遍历(非递归)1.编程思路:        二叉树的非递归先序遍历相对与对栈 的一波操作:先判断根节点是否为空,若为空直接返回,不为空将进入以下判断,将根节点入栈,进入循环体;取栈顶元素,进行访问并对栈做出栈操作;(访问包括先将其右孩子入栈,再将其左孩子入栈,如孩子为空,则不进行入栈操作)...

2018-05-06 20:44:38

阅读数:21

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭