• 欢迎访问废江's博客 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏本站吧

选择排序 24小时内最新

选择排序
简单选择排序简单选择排序不能再简单了,基本思想就是先外层循环n,作用是每循环一遍找出一个数最小的(分为无序区和有序区),在无序区中找到最小的那个数,再给到有序区。当然,找到无序区中最小的数那样也需要在无序区中在循环遍历一遍,这样时间复杂度就是o(n2),是稳定排序。下面贴出教材的简单选择排序代码void SelectSort(RecType R[……继续阅读 »

站点默认 8小时前 2浏览 0评论0个赞

交换排序

交换排序
冒泡排序冒泡排序很容易理解,外面的一层循环仅仅是为了执行n次,里面的一层循环是从最后面开始,将数与前面一个数进行比较,如果后面的数小于前面的数,那么交换,这样两两交换,得到了数组前面第一个已排序好的最小的数。重复n次则可将数组排序好,值得注意的是,思考这样一个问题,当进行了最外层循环的k(k……继续阅读 »

站点默认 2周前 (12-04) 17浏览 0评论0个赞

插入排序

插入排序
直接插入排序下面是我自己写的插入排序的代码#include<iostream>using namespace std;void insertsort(int a[],int n){ int i,j,tmp; for(int i=1;i<n;i++){ tmp=a[i]; for(j=i;j>0&……继续阅读 »

站点默认 2周前 (12-04) 13浏览 0评论0个赞

排序(总目录)

排序(总目录)
排序排序分为:内排序,外排序排序概念没什么好说的。内排序插入排序直接插入排序折半插入排序希尔排序交换排序冒泡排序快速排序选择排序简单选择排序堆排序其他排序归并排序基数排序各种内排序的方法比较和选择习题板块外排序教材上的头代码seqlist.cpp//顺序表基本运算算法#include <stdio……继续阅读 »

站点默认 2周前 (12-02) 26浏览 0评论0个赞

查找

查找
查找的概念没什么好说的,但值得提的是查找分为内外查找。查找分为三大类:线性表查找,树形查找,散列查找(又叫哈希表)线性表查找线性表查找主要有顺序查找,时间复杂度为o(n2),主要掌握折半查找(又叫二分),时间复杂度为nlog(n),因为之前学过二分查找,在算法思想,分而治之思想中,正好学到了,这里不重复学习,最后有索引结构的分块查找,下面贴出代码。……继续阅读 »

站点默认 2周前 (12-02) 15浏览 0评论0个赞

生成树和最小生成树prim,kruskal

生成树和最小生成树prim,kruskal
prim算法普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点(英语:Vertex (graph theory)),且其所有边的权值之和亦为最小。该算法于1930年由捷克数学家沃伊捷赫·亚尔尼克(英语:Vojtěch Jarník)发现;并在1957年由美国计算……继续阅读 »

站点默认 2周前 (11-28) 13浏览 0评论0个赞

最短路径dijkstra,floyd

最短路径dijkstra,floyd
最短路径分为两类,单元最短路径和多源最短路径。单源最短路径给定一个带权有向图G=(V,E),其中每条边的权是一个实数。另外,还给定V中的一个顶点,称为源。现在要计算从源到其他所有各顶点的最短路径长度。这里的长度就是指路上各边权之和。这个问题通常称为单源最短路径 [1] 问题。无权图的单源最短路径/* 邻接表存储 - 无权图的单源最短路算法 */……继续阅读 »

站点默认 2周前 (11-28) 14浏览 1评论0个赞

07-图6 旅游规划

07-图6 旅游规划
有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0~(N−1);M……继续阅读 »

站点默认 2周前 (11-28) 10浏览 0评论0个赞

05-树7 堆中的路径

05-树7 堆中的路径
将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。输出格式:对输入中给出的每个下标i……继续阅读 »

站点默认 3周前 (11-27) 7浏览 0评论0个赞

06-图1 列出连通集

06-图1 列出连通集
题目很简单,我没用教材上给的图结构,不然太麻烦了,这是个无加全的无向图。。。一个二维数组就搞定了#include<iostream>#include<malloc.h>#include<queue>#define max 50using namespace std;int map[max][ma……继续阅读 »

站点默认 1个月前 (11-10) 14浏览 0评论0个赞

图(总目录)

图(总目录)
图的概念及专业术语图的存储结构图的遍历生成树和最小生成树最短路径拓扑排序AOE网与关键路径图的概念及专业术语图分为两种:有向图和无向图下面是有关图的基本术语:图的存储结构图的两种常用存储结构:零阶矩阵和邻接表零阶矩阵适合稠密图,邻接表则适合稀疏图//图的两种存储结构#define INF 327……继续阅读 »

站点默认 1个月前 (11-10) 41浏览 0评论0个赞

集合与运算

集合与运算
这里还没有学习并查集,之后可能会更新到并查集。集合的定义:集合的存储形式:#define MAXN 1000 /* 集合最大元素个数 */typedef int ElementType; /* 默认元素可以用非负整数表示 */typedef int SetName; ……继续阅读 »

站点默认 1个月前 (11-08) 12浏览 0评论0个赞

刷题后的总结和思想

刷题后的总结和思想
我的做题过程:大约十分钟读完题并弄清了题意(我是菜鸡,大佬请忽视这个时间),多组判断,读入二叉树都是小事,关键问题我该怎么去写判断这个函数,第一时间想到了使用随便一个遍历把每一个结点存进数组里面,但是太麻烦了!我写了很长时间都没写出来,第一次写了一个全局的数组,这样调用函数直接赋值,但是那最多可是十组判断,我岂不是要声明十个emmmmmm,,,我现在感觉好像……继续阅读 »

站点默认 1个月前 (11-08) 27浏览 1评论1个赞

04-树4 是否同一棵二叉搜索树

04-树4 是否同一棵二叉搜索树
给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,……继续阅读 »

站点默认 1个月前 (11-08) 14浏览 1评论2个赞

堆
堆的定义:堆的由来:要从优先队列说起,优先队列的定义:一般的队列取出的值是先进先出,是按入队顺序去出的。那么优先队列则是按照元素的优先权的大小,比如总是取出一组数据中的最大数。那么优先队列如何实现呢??可以通过数组和链表实现,但是时间复杂度很高。如下:最好的办法就是完全二叉树来实现优先队列,我们知道完全二叉树最好的存储方式就是数组,而不是链表,可以说堆……继续阅读 »

站点默认 1个月前 (11-06) 25浏览 1评论1个赞

搜索二叉树

搜索二叉树
搜索二叉树的定义很简单:搜索二叉树可以用中序遍历来实现排序输出。。。下面是自己写的搜索二叉树的代码#include<bits/stdc++.h>using namespace std;typedef int ElementType ;typedef struct tnode *BinTree;typedef Bin……继续阅读 »

站点默认 1个月前 (11-04) 23浏览 1评论4个赞

二叉树

二叉树
二叉树的概念与性质二叉树的存储结构二叉树的前中后遍历方法二叉树的非递归遍历方法二叉树的层次遍历算法由二叉树遍历衍生出来的各种函数算法习题板块二叉树的概念与性质定义:二叉树是有限结点的集合二叉树有五种形态,有四种表示方法,其中括号表示法是最重要的,下面的链式存储结构也是根据括号表示法来的==二叉树的性质:性质1:非空二叉树上的叶子节……继续阅读 »

站点默认 1个月前 (11-04) 27浏览 2评论4个赞

03-树1 树的同构

03-树1 树的同构
给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。现给定两棵树,请你判断它们是否是同构的。输入格式:输入给出2棵二叉树树的信息。对于每棵树,首先在一行中给出一个非负整数N (≤10)……继续阅读 »

站点默认 1个月前 (11-04) 41浏览 0评论1个赞

树(总目录)

树(总目录)
树的基本概念,以及专有名词树的基本运算,以及存储结构二叉树二叉搜索树平衡二叉树堆哈夫曼树并查集及运算树的应用及习题板块树的基本概念,以及专有名词树的定义:树是由n个结点或元素组成的有限集合。。。。树的四种逻辑表示方法:树形表示法,文氏图表示法,凹入表示法,括号表示法树的基本术语(重要):树的性质:性质1 树中的结点数等于……继续阅读 »

站点默认 2个月前 (10-13) 77浏览 0评论1个赞

串(存储结构)

串(存储结构)
串的存储结构有两种:顺序存储结构和链式存储结构串的存储方式有两种:紧缩格式和非紧缩格式由于串的函数方法较多,我直接学习教材上写的函数,自己不写了串的存储方式串的顺序存储结构串的链式存储结构习题板块串的存储方式顺序存储结构//顺序串基本运算的算法#include <stdio.h>#define MaxSize ……继续阅读 »

站点默认 2个月前 (10-08) 36浏览 0评论2个赞

队列(链式存储结构)

队列(链式存储结构)
直接写一个队列和教材上对比双端队列学习队列的应用一:报数问题队列的应用二:求解迷宫习题板块//自己写的链式结构队列// 要实现的操作有: 初始化initqueue , 销毁destroyqueue , 判断为空emptyqueue// 进队列enqueue , 出队列dequeue 打印队列prntqueue#in……继续阅读 »

站点默认 2个月前 (10-04) 42浏览 0评论4个赞

队列(顺序存储结构)

队列(顺序存储结构)
自己写一个队列和教材上对比习题板块自己写的队列这里我新加了一个打印函数,并且我只写了循环队列,教材有两种,一种是循环队列,一种是顺序队列,但是顺序队列实在太耗空间了,基本用不到,所以我就直接跳了//自己写的队列(数组实现)//因为非循环队列太耗空间了,我就直接写循环队列,其实区别很小,要注意的就两点://利用求余操作就可以实现:fr……继续阅读 »

站点默认 2个月前 (10-04) 23浏览 0评论5个赞

实现栈(链式存储)

实现栈(链式存储)
自己写个栈和教材上对比栈的应用一:括号配对栈的应用二:逆波兰数栈的应用三:求解迷宫习题板块自己写的链式栈#include<bits/stdc++.h>using namespace std; //自己写的链式栈//要实现的操作有: 初始化栈initstack , 销毁栈destroystack , 判断栈空em……继续阅读 »

站点默认 2个月前 (10-03) 34浏览 0评论2个赞

02-线性结构2 一元多项式的乘法与加法运算

02-线性结构2 一元多项式的乘法与加法运算
设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。输入样……继续阅读 »

站点默认 2个月前 (10-01) 25浏览 0评论2个赞

线性表(链式存储结构)

线性表(链式存储结构)
自己写一个单链表和教材上的对比学习双链表和循环单双链表线性表的应用:两个表的连接算法以及其他应用教材上的习题由于时间有限,直接贴教材上的单链表学习==//单链表基本运算算法#include <stdio.h>#include <malloc.h>typedef int ElemType;typedef……继续阅读 »

站点默认 2个月前 (10-01) 75浏览 0评论2个赞

线性表(顺序存储结构)

线性表(顺序存储结构)
线性表的顺序存储结构(数组实现)自己先写一个顺序表,接着和教材上的对比,有那些bug或者不足用线性表实现,以一个元素为分界线,大于它的移到其前面,小于移到后面(用两种解法)用线性表实现,将其所有奇数移到偶数前面(两种解法)完成教材后相关练习题和实验题自己写的线性表//顺序表(数组实现) //要实现的操作有:初始化表:Initlist(……继续阅读 »

站点默认 3个月前 (09-22) 70浏览 0评论3个赞

大一的算法笔记

大一的算法笔记
上学期的算法笔记,有点杂,嘿嘿,有错误,欢迎指正1.求三个最大数中,老师用了函数,系统函数max,而且是镶嵌套用。再看自己的代码,可以看出效率的高低。在今后的数量大小比较中,应该学会使用max系统函数,同时掌握其他系统函数。#includeusing namespace std;int main(){ int a,b,c,d; cin>>a>……继续阅读 »

站点默认 4个月前 (08-19) 93浏览 1评论14个赞