wrlovesmile
码龄5年
关注
提问 私信
  • 博客:139,747
    社区:2
    139,749
    总访问量
  • 23
    原创
  • 1,128,852
    排名
  • 97
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:福建省
  • 加入CSDN时间: 2019-09-27
博客简介:

wrlovesmile的博客

查看详细资料
个人成就
  • 获得443次点赞
  • 内容获得39次评论
  • 获得1,636次收藏
  • 代码片获得5,705次分享
创作历程
  • 1篇
    2021年
  • 22篇
    2020年
成就勋章
TA的专栏
  • C语言数据结构与算法
    16篇
  • 计算机算法设计
    4篇
  • JavaWeb相关知识
    5篇
创作活动更多

仓颉编程语言体验有奖征文

仓颉编程语言官网已上线,提供版本下载、在线运行、文档体验等功能。为鼓励更多开发者探索仓颉编程语言,现诚邀各位开发者通过官网在线体验/下载使用,参与仓颉体验有奖征文活动。

368人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

(C/C++)-图的深度优先遍历(DFS)和广度优先遍历(BFS)

(C/C++)-图的深度优先遍历(DFS)和广度优先遍历(BFS)1、图的深度优先遍历(DFS)图的深度优先遍历与树的先序遍历类似,即尽可能深的遍历图这里采取邻接矩阵存储图,存储的图如下:ps: 这个图沿用我的上一篇文章(最小生成树和单源最短路径),有兴趣的伙伴可以看看----点击传送门基本思想:先访问图的某一顶点v,然后由顶点v出发,访问与顶点v邻接并且未被访问的任一顶点w1;在由w1出发,访问与顶点w1邻接并且未被访问的任一顶点w2;重复上述过程,直到所有顶点被访问;具体实现:
原创
发布博客 2021.01.06 ·
2615 阅读 ·
8 点赞 ·
1 评论 ·
14 收藏

(C/C++)-最小生成树算法(Prim&Kruskal)和单源最短路径算法(Dijkstra)

(C/C++)-最小生成树算法(Prim&Kruskal)和单源最短路径算法(Dijkstra)1、什么是最小生成树对于一个带权连通无向图G=(V,E),图G的不同的生成树,其所对应的生成树的权值可能不同。设R是G所有生成树的集合,T是R中权值最小的那棵生成树,则称T为G的最小生成树最小生成树的性质最小生成树可能不唯一,但其对应的边的权值之和总是唯一的,且是最小的;最小生成树的边数为顶点数-1; 2、Prim算法的实现(选点)图G=(V,E),其中V为所有结点的集合,E为图G的边
原创
发布博客 2020.12.12 ·
2322 阅读 ·
6 点赞 ·
1 评论 ·
9 收藏

C语言-哈夫曼树与哈夫曼编码的实现

C语言-赫夫曼树与赫夫曼编码的实现
原创
发布博客 2020.11.08 ·
8451 阅读 ·
29 点赞 ·
2 评论 ·
206 收藏

递归与分治策略算法之循环赛日程表

递归与分治策略算法之循环赛日程表1、先简单的来介绍一下分治策略的思想分治策略的基本思想是将一个规模为n的问题分解为k个规模较小的子问题,分解出来的子问题与原问题相同,并且相互独立。通过递归去解决子问题,然后将子问题的解合并得到原问题的解。2、循环赛日程表问题的介绍...
原创
发布博客 2020.09.11 ·
3502 阅读 ·
6 点赞 ·
1 评论 ·
48 收藏

递归与分治策略算法之棋盘覆盖问题

递归与分治策略算法之棋盘覆盖问题1、先简单的来介绍一下分治策略的思想分治策略的基本思想是将一个规模为n的问题分解为k个规模较小的子问题,分解出来的子问题与原问题相同,并且相互独立。通过递归去解决子问题,然后将子问题的解合并得到原问题的解。2、棋盘覆盖问题的介绍    在一个2k2^k2k*2k2^k2k方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为特殊方格,称该棋盘为特殊棋盘。    现在要让这个大的特殊棋
原创
发布博客 2020.09.09 ·
2303 阅读 ·
4 点赞 ·
0 评论 ·
14 收藏

C语言数据结构之栈在表达式值的应用

C语言数据结构之栈在表达式中的应用tips:前些天学习了数据结构,今天来总结一下数据结构知识栈的应用。一、前缀表达式,中缀表达式,后缀表达式的介绍前缀表达式(波兰表达式):运算符在两个操作数之前的表达式;中缀表达式:运算符在两个操作数中间的表达式;后缀表达式(逆波兰表达式):运算符在两个操作数之后的表达式;可以了解到表达式的区别在于运算符的位置不同。从这里可以看出,中缀表达式就是我们正常书写的表达式。下面来看一个例子,加深一下对这三种表达式的理解与转换过程。中缀表达式后缀表达
原创
发布博客 2020.09.06 ·
1899 阅读 ·
7 点赞 ·
3 评论 ·
6 收藏

C语言数据结构之内部排序及其时间复杂度

C语言数据结构之内部排序及其时间复杂度tips:前些天学习了查找的方法,今天来总结一下九大内部排序。先总览一下九大内部排序: 内部排序 插入排序 直接插入排序 折半插入排序 希尔排序 交换排序 冒泡排序 快速排序 选择排序 简单选择排序 堆排序 归并排序 基数排序 下面来逐个看看内部排序的过程1、直接插入排序直接插入排序是在有序序列中插入元素,使其仍然有序。思路:
原创
发布博客 2020.08.30 ·
885 阅读 ·
3 点赞 ·
0 评论 ·
4 收藏

C语言数据结构之查找(顺序查找,折半查找)

C语言数据结构之查找(顺序查找,折半查找)tips:前些天已经学习了树和图的相关知识,今天来总结下两种常用的查找方式(顺序查找,折半查找)。为了演示方便,顺序查找和折半查找的数据存储结构就直接采用数组。1、顺序查找顺序查找又称线性查找,主要用于在线性表中进行查找;顺序查找跟我们用循环遍历进行暴力破解类似。。直接看代码:#define N 11//顺序查找(适用于线性表)int Seq_Search(int *arr, int key) { int i; arr[0] = key
原创
发布博客 2020.08.29 ·
8525 阅读 ·
14 点赞 ·
0 评论 ·
94 收藏

C语言数据结构之查找(顺序查找,折半查找)

C语言数据结构之查找(顺序查找,折半查找)tips:前些天已经学习了树和图的相关知识,今天来总结下两种常用的查找方式(顺序查找,折半查找)。为了演示方便,顺序查找和折半查找的数据存储结构就直接采用数组。1、顺序查找顺序查找又称线性查找,主要用于在线性表中进行查找;顺序查找跟我们用循环遍历进行暴力破解类似。。直接看代码:#define N 11//顺序查找(适用于线性表)int Seq_Search(int *arr, int key) { int i; arr[0] = key
原创
发布博客 2020.08.29 ·
8525 阅读 ·
14 点赞 ·
0 评论 ·
94 收藏

C语言数据结构之二叉排序树

C语言数据结构之二叉排序树tips:前些天学习了线索二叉树,今天来总结一下二叉排序树的相关操作。二叉排序树(BST):若左子树非空,则左子树上所有结点的值均小于根结点的值;若右子树非空,则右子树上所有结点的值均大于根结点的值;二叉排序树的左右子树也是一棵二叉排序树;总之,二叉排序树的中序序列是一个递增的序列。二叉排序树的存储结构与普通二叉树相同:typedef struct node{ int key;//关键字 struct node *left; struct node *
原创
发布博客 2020.08.28 ·
1879 阅读 ·
1 点赞 ·
0 评论 ·
11 收藏

C语言数据结构之线索二叉树

C语言数据结构之线索二叉树tips:前些天学习了二叉树的相关操作,今天来总结一下线索二叉树的操作。线索二叉树:对二叉树以某种次序遍历得到序列中的前驱和后继,其中指向结点前驱和后继的指针称为线索,再加上线索的二叉树称之为线索二叉树。线索化:对二叉树以某种次序遍历使其变成线索二叉树的过程称为线索化1、线索二叉树的存储结构lchildltagdatartagrchild其中,标志域的含义:ltag0:lchild域指示结点的左孩子;1:lchild域指示结点的前驱;
原创
发布博客 2020.08.28 ·
692 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

C语言数据结构之二叉树的层次建树及遍历方法(前序,中序,后序,层次遍历)

C语言数据结构之二叉树的层次建树及遍历方法(前序,中序,后序,层次遍历)tips:前些天学习了C语言数据结构链表,栈,队列。今天来学习一下C语言数据结构之二叉树的各种操作。注意:二叉树的层次建树是建立的完全二叉树。完全二叉树:对满二叉树进行编号,约定编号从1开始,从上到下,从左至右,每个结点的编号与其深度相同的满二叉树结点的编号一一对应。完全二叉树的性质:具有n个结点的完全二叉树的深度为 ⌊log⁡2n\log_2nlog2​n⌋+1;若编号为i的结点左右子树存在,则其左子树的编号为
原创
发布博客 2020.08.27 ·
6236 阅读 ·
9 点赞 ·
0 评论 ·
47 收藏

C语言数据结构之顺序队列

C语言数据结构之顺序队列tips:前些天学习了顺序表和顺序栈,今天来看看c语言数据结构之队列的基本操作。队列的特点是先进先出,后进后出。因此我们使用一个队头指针和一个队尾指针分别指向队头元素,以及队尾元素的下一个位置。首先我们创建一个顺序队列的结构体#define MaxSize 10 //定义队列中最大元素个数typedef struct { int data[MaxSize];//用静态数组存放队列元素 int front, rear;//队头指针和队尾指针,这里队尾指针指向的是队尾
原创
发布博客 2020.08.19 ·
3808 阅读 ·
10 点赞 ·
2 评论 ·
35 收藏

C语言数据结构之顺序栈

C语言数据结构之顺序栈tips:前些天学习了顺序表的一系列操作,今天来看看C语言数据结构之顺序栈的实现以及关于顺序栈的各种操作。栈的特点是先进后出,后进先出,在数组中可利用一个指向数组下标指针top来进行顺序栈的相关操作。首先我们定义一个顺序栈的结构体#define MaxSize 10 //给顺序栈定义默认大小typedef struct { int data[MaxSize];//静态数组存放栈中元素 int top;//栈顶指针(数组下标)}Stack,*pStack;准备
原创
发布博客 2020.08.19 ·
1527 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

C语言数据结构之顺序表的增删改查

C语言数据结构之顺序表的增删改查tips:前些天学习了链表的操作以及相关的数据结构,今天我们来学习一下c语言数据结构之顺序表的增删改查。顺序表采用顺序存储,即把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中,元素之间关系由存储单元的邻接关系来体现。首先创建一个顺序表的结构体,采用动态数组的方式来实现顺序表#define InitSize 10//动态分配顺序表的默认最大长度//定义顺序表的结构体(动态顺序表)typedef struct student { int *data;//
原创
发布博客 2020.08.17 ·
3713 阅读 ·
5 点赞 ·
0 评论 ·
25 收藏

C语言数据结构之队列的实现(链表实现)

C语言数据结构之队列的实现tips:前些天学习了链表和栈,今天来看看c语言数据结构之队列的实现以及队列的各种操作。队列的特点是先进先出,后进后出,因此我们很容易就能够想到用单链表的尾插法,和头部删除法去实现队列的入队和出队的操作。首先我们来看一下队列的各种操作的实现思路以及具体实现过程准备工作:创建队列元素的结构体//定义结点typedef struct tag{ int val;//队列(链表)的值 struct tag *pNext;}Node,*pNode;
原创
发布博客 2020.08.15 ·
1990 阅读 ·
4 点赞 ·
1 评论 ·
23 收藏

C语言数据结构之栈(链表实现)

C语言数据结构之栈(链表实现)tips:前些天学习了单链表的增删改查,对于双向链表和循环链表而言,无非就是对单链表的指针进行稍微的变换。今天来看看c语言数据结构之栈的实现以及栈的各种操作。栈的特点是先进后出,后进先出,因此我们很容易联想到去使用单链表的头插法,和头部删除法去实现入栈和出栈的操作。首先我们来看一下栈的各种操作的实现思路以及具体实现过程准备工作:创建栈中元素的结构体typedef struct tag { int val;//栈(链表)的值,即数据域部分 struct
原创
发布博客 2020.08.11 ·
2230 阅读 ·
3 点赞 ·
0 评论 ·
17 收藏

C语言数据结构之链表的增删改查

C语言数据结构之链表的增删改查tips:昨天学习了c语言结构体,今天来看看c语言数据结构之链表的增删改查操作首先我们创建一个简单的学生信息结构体,作为后面增删改查的主体student结构体包含数据域:学号,分数;指针域:一个指向后继结点的pNext指针;typedef struct student { int num; int score; struct student *pNext;}stu, *pstu;链表测试输出函数//链表打印void lis
原创
发布博客 2020.08.10 ·
5298 阅读 ·
9 点赞 ·
1 评论 ·
56 收藏

C语言结构体与结构体指针的使用

C语言结构体与结构体指针的使用tips:最近要好好学习一下数据结构,所以必不可少的就是c语言的结构体和结构体指针了,所以就整理一下这些基础知识c语言结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合。说的通俗一点就是一个集合。c语言是一门面向过程的编程语言,而结构体的使用在某些层次上跟面向对象有点异曲同工之处了。下面回归正题,学习一下结构体以及结构体指针的知识。一、结构体变量的定义和初始化1、首先我们来看一下结构体的定义 struct 结构体名 { 成员列表; }
原创
发布博客 2020.08.08 ·
68934 阅读 ·
297 点赞 ·
20 评论 ·
965 收藏

Springboot整合SSM框架详细流程(附:demo查询表中所有数据)

Springboot整合SSM框架详细流程(附:demo查询表中所有数据)1、Springboot简单介绍在SpringBoot框架出现之前,Java EE开发最常用的框架是Spring,该框架虽然是轻量级的,但它的配置却是重量级的。SpringBoot是在原有Spring框架的基础上通过注解的方式进一步简化了Spring框架的使用。我们一般把Spring Boot称为搭建程序的脚手架, 或者说是便捷搭建基于Spring的工程脚手架。其最主要作用就是帮助开发人员快速的构建庞大的spring项目,并且尽
原创
发布博客 2020.08.02 ·
4403 阅读 ·
10 点赞 ·
0 评论 ·
22 收藏
加载更多