- 博客(12)
- 收藏
- 关注
原创 树-二叉树(详解)
通常的方法是链表中每个结点由三个域组成,数据域和左右指针域,左右指针分别用来给出该结点左孩 子和右孩子所在的链结点的存储地址。对 于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号 从1至n的结点一一对应时称之为完全二叉树。也就是说,如果一个二叉树的层数为K,且结点总数是(2^k) -1 ,则它就是满二叉树。一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵别称为左子树和右子树的二叉树组成。二叉树是一个节点的有限集合,当该集合为空,则是上图的空树。
2025-03-05 22:04:45
987
1
原创 Linux中gdb调试常用命令
GNU Debugger(GDB)是GNU项目的一部分,是一个功能强大且灵活的调试工具,广泛应用于调试C、C++、Fortran和其他编程语言的程序。GDB允许开发者检查和修改程序的运行状态,从而帮助识别和修复错误。程序的发布方式有两种,debug模式和release模式Linux gcc/g++出来的二进制程序,默认是release模式要使用gdb调试,必须在源代码生成二进制程序的时候,加上 -g 选项。
2025-02-18 23:03:13
731
原创 Ubuntu Vim编辑器自动补全技巧:提升编码效率!
但是网上配置的文件都设置了不开启swap功能,经过查看vim配置SWAP信息,找到设置的里面的关键语句配置文件在用户主目录“~”里面,通过ls -al 命令查看 .vimrc。读者感兴趣的话直接复制下面的代码到文本文件,然后把文件改名为“ .vimrc” (不要忘记前面的“.”),然后把文件放到用户文件夹的根目录下面即可。vim本来就是很强大,很方便的编辑器,加上我的代码后肯定会如虎添翼,或许读者使用其他编程语言,可以根据自己的需要进行修改,配置文件里面已经加上注释。8.按“Ctrl + P”可自动补全。
2025-02-13 00:09:28
272
原创 C++缺省参数详解
缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时,如果没有指定实参则采用该形参的缺省值,否则使用指定的实参。
2024-12-28 18:21:17
156
原创 顺序表(C语言实现)
顺序表头插数据需要找到尾巴的元素,然后将尾元素往前的全部元素全部往后移动覆盖掉,再将数据填到顺序表的表头,时间复杂度是O(n)顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。即使内存块被移动到新的位置,内存块的内容也会保留到新大小和旧大小的较小值。:是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。如果是空指针,函数的行为类似于分配一个新的字节块,并返回一个指向其开头的指针。:是n个具有相同特性的数据元素的有限序列。
2024-08-15 23:43:52
376
原创 单链表图文详解(C语言实现)
优点:1.下标访问(随机访问)时间复杂度是O(1)2.末尾位置增加删除元素时间复杂度是O(1)3.访问元素前后相邻位置的元素非常方便缺点:1.非末尾位置增加删除元素需要进行大量的数据移动O(n)2.搜索的时间复杂度:无序数组-线性搜索O(n)有序数组-二分搜索O(logn)3.数组扩容消耗比较大,少了需要再扩容,多了浪费资源!
2024-04-23 15:20:38
834
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人