数据结构与算法C++实现
最基本的内容是,用C++语言实现清华大学出版社严蔚敏《数据结构(C语言版)》的所有算法以及《算法设计和分析基础》的大部分算法,愿和所有学习算法的朋友一起探讨。
Handoking
聚沙成丘。
展开
-
【精华】排序算法汇总——希尔排序与堆排序
日常说明:有错误欢迎大家指正,希望对你们有用。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 三、希尔排序(shell sort) 算法思想:希尔排序又称为缩小增量排序,也属于插入类排序方法。具体的操作是:先将整个待排记录序列分割成若干子序列,然后对子序列分别进行插入排序,最后再进行一次直接插入排序。复杂度为O(n...原创 2018-07-04 16:00:08 · 385 阅读 · 0 评论 -
【精华】排序算法汇总——冒泡排序和快速排序
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 有朋友反映让我多加备注,我觉得除非特别惊艳的方法需要说明外,这些基本的方法是容易明白的,当然前提是先搞...原创 2018-07-03 20:45:16 · 483 阅读 · 0 评论 -
【源代码】严蔚敏数据结构算法C++(十九)多段图
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 有朋友反映让我多加备注,我觉得除非特别惊艳的方法需要说明外,这些基本的方法是容易明白的,当然前提是先搞懂算...原创 2018-06-05 21:14:37 · 716 阅读 · 0 评论 -
【源代码】严蔚敏数据结构算法C++(十八)排序——归并排序
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 有朋友反映让我多加备注,我觉得除非特别惊艳的方法需要说明外,这些基本的方法是容易明白的,当然前提是先搞懂算...原创 2018-05-27 14:13:52 · 1232 阅读 · 0 评论 -
【源代码】C++数据结构算法(十七)排序——堆排序
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html HeapSort.cpp#include "HeapSort.h"HeapSort::H...原创 2018-05-25 09:25:07 · 330 阅读 · 0 评论 -
【源代码】C++数据结构算法(十六)排序——快速排序
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行结果: 为了更加熟练顺序表的操作,所以我选择了自己写顺序表。直接调用也是可以的。 QuickSor...原创 2018-05-14 20:42:39 · 316 阅读 · 0 评论 -
【源代码】C++数据结构算法(十五)排序——希尔排序
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行结果: ShellSort.h#define LIST_INIT_SIZE 20;#def...原创 2018-05-14 20:37:43 · 853 阅读 · 0 评论 -
【源代码】C++数据结构算法(十四)静态查找——二分法(折半查找)
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: SearchBin.h#pragma once#include<iostre...原创 2018-05-10 15:10:25 · 480 阅读 · 0 评论 -
【源代码】C++数据结构算法(十三)动态查找——二叉排序树
日常说明:有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: 本算法采用比较简单,也比较局限的方法。先用先序遍历建树,然后再进行查找。相对于可输...原创 2018-05-10 14:52:57 · 505 阅读 · 0 评论 -
【源代码】C++数据结构算法(十二)图与最短路径
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试 通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴 最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: SPath.h#pragma once/***...原创 2018-05-01 20:06:38 · 512 阅读 · 0 评论 -
【源代码】C++数据结构算法(十一)用邻接表实现图与关键路径
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试 通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴 最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 学过的同学都知道,求得关键路径,要先看拓扑排序能否进行下去,如果一个工程连进...原创 2018-05-01 20:00:18 · 1149 阅读 · 2 评论 -
【源代码】C++算法(十)用邻接表实现图以及图拓扑排序
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试 通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴 最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: Toposort.h#pragma once#d...原创 2018-05-01 19:43:22 · 987 阅读 · 0 评论 -
【源代码】C++算法(九)最小生成树(邻接矩阵)
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试 通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴 最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: MinSpanTree.h#pragma onc...原创 2018-04-21 09:54:44 · 969 阅读 · 0 评论 -
【源代码】C++算法(八)用邻接矩阵定义图和深度广度遍历
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试 通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴 最好新建空项目将此代码复制上去。 更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: Graph.h 其中头文件”SqQueue.h”见算法...原创 2018-04-19 22:23:26 · 594 阅读 · 0 评论 -
【源代码】C++算法(七)哈夫曼树建造与编码
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: HuffmanCoding.h#pragma ...原创 2018-04-11 22:34:59 · 2775 阅读 · 1 评论 -
【源代码】C++算法(六)二叉树(先序,中序,后序遍历)
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: BinaryNode.h/************...原创 2018-04-11 22:18:29 · 899 阅读 · 2 评论 -
【源代码】C++算法(五)一维数组去重(复杂度为n且不新开辟空间)
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html arr_uni.cpp#include<cstdlib>...原创 2018-03-30 08:39:58 · 2759 阅读 · 2 评论 -
【源代码】C++算法(四)队列的基本操作 (用队列实现十进制转换十六进制)
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。更多算法请关注我的算法专栏https://blog.csdn.net/column/details/20417.html 运行截图: SqQueue.h#pragma once/*****...原创 2018-03-24 15:02:56 · 1068 阅读 · 0 评论 -
【源代码】C++算法(三)堆栈的基本操作(出栈,入栈,销毁,数组初始化和空栈初始化)
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。运行结果: stack.h#pragma once/*********************************** algorithms.h :堆栈的基本操作 ** au...原创 2018-03-23 22:07:40 · 2175 阅读 · 0 评论 -
【源代码】C++算法(二)单链表的基本操作+合并连接多项式运算
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。附加说明:多项式运算部分代码中参考了http://www.cnblogs.com/TenosDoIt/p/3666585.html 的几个函数的写法,增加了输出操作符重载等更为方便的函数。更多算法请关注...原创 2018-03-20 22:05:25 · 985 阅读 · 2 评论 -
【源代码】C++实现严蔚敏数据结构所有算法(一)线性表-顺序表
日常说明:首先博主也是菜鸟一枚,有错误欢迎大家指正。另外本博客所有的代码博主编写后均调试通过。重要提醒!!!!博主使用的是VS2017,如果有低版本的小伙伴最好新建空项目将此代码复制上去。附加说明:最初的代码我没有严格的按照项目规范来分离,希望大家包含。 头文件 list.h#pragma once/*********************************** a...原创 2018-03-13 20:00:36 · 2192 阅读 · 6 评论