
数据结构
太原理工大学数据结构
NGC 2237号
愿你熬过万丈孤独,藏下星辰大海
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
进制转换(查表法)
实现思路: 将二进制、八进制、十进制、十六进制所有可能的字符都存入数组 利用按位与运算符和右移依次取出当前进制对应位置的值 利用取出的值到数组中查询当前位输出的结果 将查询的结果存入一个新的数组, 当所有位都查询存储完毕, 新数组中的值就是对应进制的值 #include <stdio.h>void toBinary(int num){ total(num, 1, 1);}void toOct(int num){ to...原创 2022-01-08 07:45:00 · 375 阅读 · 0 评论 -
折半查找排序
基本思路 在有序表中,取中间元素作为比较对象,若给定值与中间元素的要查找的数相等,则查找成功;若给定值小于中间元素的要查找的数,则在中间元素的左半区继续查找; 若给定值大于中间元素的要查找的数,则在中间元素的右半区继续查找。不断重复上述查找过 程,直到查找成功,或所查找的区域无数据元素,查找失败 实现步骤 在有序表中,取中间元素作为比较对象,若给定值与中间元素的要查找的数相等,则查找成功; 若给定值小于中间元素的要查找的数,则在中间元素的左半区继续查找;..原创 2022-01-08 07:30:00 · 458 阅读 · 0 评论 -
希尔 排序
1959年Shell发明,第一个突破O(n2)的排序算法,是简单插入排序的改进版。它与插入排序的不同之处在于,它会优先比较距离较远的元素。希尔排序又叫缩小增量排序。 排序思路: 1.希尔排序可以理解为插入排序的升级版, 先将待排序数组按照指定步长划分为几个小数组 2.利用插入排序对小数组进行排序, 然后将几个排序的小数组重新合并为原始数组 3.重复上述操作, 直到步长为1时,再利用插入排序排序即可 int main(){ // 待排序数组 in.原创 2022-01-08 07:00:00 · 92 阅读 · 0 评论 -
插入 排序
插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 排序思路: 假设按照升序排序 1.从索引为1的元素开始向前比较, 一旦前面一个元素大于自己就让前面的元素先后移动 2.直到没有可比较元素或者前面的元素小于自己的时候, 就将自己插入到当前空出来的位置 int main(){ // 待排序数组 int nums[5] = {3.原创 2022-01-07 23:06:41 · 86 阅读 · 0 评论 -
插入 排序
插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 排序思路: 假设按照升序排序 1.从索引为1的元素开始向前比较, 一旦前面一个元素大于自己就让前面的元素先后移动 2.直到没有可比较元素或者前面的元素小于自己的时候, 就将自己插入到当前空出来的位置 int main(){ // 待排序数组 int nums[5] = {3.原创 2022-01-07 23:05:44 · 425 阅读 · 0 评论 -
冒泡 排序
冒泡排序(Bubble Sort)是一种简单的排序算法。它重复 地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 排序思路: 假设按照升序排序 1.从第0个元素开始, 每次都用相邻两个元素进行比较 2.一旦发现后面一个元素小于前面一个元素就交换位置 3.经过一轮比较之后最后一个元素就是最大值原创 2022-01-07 23:03:03 · 110 阅读 · 0 评论 -
选择 排序
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,然后放到排序序列末尾。以此类推,直到所有元素均排序完毕。 排序思路: 假设按照升序排序 1.用第0个元素和后面所有元素依次比较 2.判断第0个元素是否大于当前被比较元素, 一旦小于就交换位置 3.第0个元素和后续所有元素比较完成后, 第0个元素就是最小值 4.排除第0个元原创 2022-01-07 23:01:38 · 86 阅读 · 0 评论 -
数据结构(c语言版)各章内容总结
第一部分 各章内容总结第1章 概 述1.数据:凡能被计算机存储、加工的对象统称为数据。2.数据元素:是数据的基本单位,在程序中作为一个整体而加以考虑和处理。根据需要,数据元素有时被称为元素、结点、顶点和记录。3.数据项:数据元素一般是由数据项组成的,数据项是数据的不可分割的最小表示单位。4.逻辑关系:是指数据元素之间的关联方式或称“邻接关系”5.逻辑结构:数据元素之间逻辑关系的的整体称为逻辑结构6.四种逻辑结构的特点:①集合中任何两个结点之间都没有逻辑关系,...原创 2021-12-23 13:10:05 · 7900 阅读 · 2 评论 -
太原理工期末数据结构复习(划重点)
第一章P5 4类基本结构P6 数据元素的两种不同表示方法:顺序影响和非顺序映像->两种不同的存储结构:顺序存储结构和链式存 储结构非链式存储映像借助指示元素存储地址的指针表示数据元素之间的逻辑关系P9三元组的定义、多型数据结构P10预定义常量和类型P12抽象数据类型P13算法的5个重要特性:输入、输出、可行性、确定性、有穷性算法目标:正确性、可读性、健壮性、效率与低存储量需求P15时间复杂度、空间复杂度P17原地工作:若额外空间相原创 2021-12-23 11:37:27 · 1137 阅读 · 0 评论