自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (1)
  • 收藏
  • 关注

原创 C语言二分查找递归与非递归实现

折半查找也成二分查找,它是一种效率较高的查找方法。但是,二分查找要求线性表必须采用顺序存储结构,而且表中元素需按关键字有序排列,以下内容均设有序表是递增有序的。查找过程:首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。算法步骤:1

2021-12-07 21:43:48 2910

原创 迪杰斯特拉算法

迪杰斯特拉算法(Dijkstra)是由荷兰计算机科学家迪杰斯特拉于1959年提出的,因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。迪杰斯特拉算法主要特点是从起始点开始,采用贪心算法的策略,每次遍历到始点距离最近且未访问过的顶点的邻接节点,直到扩展到终点为止。算法思想:把顶点集合V分成两组:(1)S:已求出的顶点的集合(初始时只含有源点V0)(2)V-S=T:尚未确定的顶点集合将T中顶点按递增的次序加入到S中,保证:(1)从源点V0...

2021-12-03 20:49:58 600

原创 有向图的邻接表及其遍历(DFS、BFS)

邻接表是图的一种链式存储结构。在邻接表中,对每个顶点vi 建立一个单链表,把与vi有关联的边的信息链接起来,每个结点设为3个域;//边结点的类型定义typedef struct ArcNode{ int adjvex;//存放邻接的点在顶点表的下标,邻接点 struct ArcNode *next;//指向Vi下一个邻接点的边结点 }ArcNode; //顶点结点类型定义typedef struct vexnode { ver data; //存储顶点.

2021-11-30 17:41:45 3738

原创 栈的回文判断

回文是指正读反读都能读通的句子。栈的回文判断需要将数据入栈,依据栈的先入后出的原则进行出栈,将入栈和出栈进行比较,也可以将数据分半,将数据前半段和后半段进行比较。样例1:输入:12321 输出:YES!样例2:输入:abaaba 输出:YES!样例3:输入:adcab 输出:NO!#include <stdio.h>#include<string.h>struct Stack//初始化 { int top; char str...

2021-11-30 17:08:40 2272

原创 二叉树的层次、递归与非递归遍历

本文主要讲解二叉树的遍历方法

2021-11-22 21:05:41 1290 5

原创 KMP算法、BF算法

#include<stdio.h>#include<string.h>int next[100000];void getnext(char s2[]) { int i = 1; next[1] = 0; int j = 0; while (i<strlen(s2)) { if (j == 0 || s2[i-1] == s2[j-1]) { ++i; ++j; ...

2021-11-19 09:22:16 442

原创 n阶乘的递归与非递归的实现

#include<stdio.h>int jiecheng1(int n){ int a=1; for(int i=1;i<=n;i++){ a*=i; } return a;}int jiecheng2(int n){ if(n==0) return 1; else return n*jiecheng2(n-1);}int main(){ int n; scanf("%d",&n);...

2021-11-19 09:20:12 2520

原创 斐波那契数列递归与非递归的实现

#include<stdio.h>int Fib1(int n){ if(n==1)return 1; if(n==2)return 1; return Fib1(n-1)+Fib1(n-2);}int Fib2(int n){ if(n==1)return 1; if(n==2)return 1; int f1,f2,f3; f1=1,f2=1; for(int i=3;i<=n;i++){ f3=f...

2021-11-19 09:18:37 1443

c++数据结构初学者课程设计论文报告

该资源是用c++写好的数据结构课程设计论文报告(报告中有部分代码,格式均已调好),题目为多功能计算器(Qt可视化界面),主要功能为表达式运算、常见进制转换、高精度计算操作,需要代码可私信我。

2021-12-24

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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