
数据结构与算法
文章平均质量分 63
Neil__Hu
努力搬砖的程序员社畜一枚
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++引用作为递归函数参数时的分析,递归函数传引用和传值的比较
在使用递归函数时,我们经常会遇到要使用引用,还是直接传值的问题。要明白这个问题,先要搞懂引用做了什么。当进行递归操作时,我们要不要使用引用作为参数,还是一般的值作为参数,这篇文章将要讨论这些问题:C++引用作为递归函数参数时的分析,递归函数传引用和传值的比较原创 2025-03-03 09:19:19 · 968 阅读 · 0 评论 -
C++实现二叉树的创建删除,dfslfs,求叶子结点个数,求叶子结点个数,求树的高度
用链栈建立二叉树,通过递归实现深度优先的三种遍历,用队列实现广度优先层次遍历。借助递归思想求解叶子结点个数和树的深度。tree.h定义基本的框架,包括结点的定义,创建树时用的栈,lfs遍历用到的队列等。在教材上经常出现用数组实现栈,这里不妨用链表实现。例子定义组成元素为结点的队列1插入结点过程:先构建根结点,用left_value判断是否有左节点,如果有就退栈;(x,x)插入右节点前先退栈,之后新节点入栈,(,x)插入右节点,之后新节点入栈。k判断下一个要插入的是左节点还是右节点。原创 2024-09-27 01:55:46 · 633 阅读 · 0 评论 -
C++环形链表实现约瑟夫(Josephu)问题
约瑟夫问题如下:设有n个人围坐圆桌周围。从某个位置上的人开始从1报数,数到m的人便出列,下一个人(第m+1个)又从1报数开始,数到m的人便是第2个出列的人,依次类推,直到最后一个人出列为止,这样就可以得到一个人员排列的新次序。例如,n=8,m=4,从第1个人数起,得到的新次序为48521376。简单的环形链表创建过程。front和next指针,便于链表的插入和删除。JosephuCLList函数实现约瑟夫环问题。存储结构:带头结点的双向环形链表。原创 2024-09-26 19:08:41 · 318 阅读 · 0 评论 -
字符串匹配:BF算法和KMP算法讲解
字符串匹配:BF算法和KMP算法讲解原创 2024-09-26 18:32:31 · 433 阅读 · 0 评论 -
C语言实现快速排序并显示排序过程 ###C++环形链表实现约瑟夫(Josephu)问题
C语言实现快速排序并显示排序过程 ###C++环形链表实现约瑟夫(Josephu)问题原创 2024-09-18 19:38:21 · 299 阅读 · 0 评论