
新——数据结构
文章平均质量分 52
圣马丁鸟
这个作者很懒,什么都没留下…
展开
-
C++类和对象
日期Date代码:.h:.cpp:基本知识点:1.访问限定符有三个:public(公有)private(私有)protected(保护)2.面向对象的是三个特性:封装,集成,多态3.空类的大小是1,但他不存储有效数据,仅仅是用来表示变量被定义出来4.关于this指针:在d1调用Init函数的时候,编译器就自动给你将当前对象即d1的地址传过去Init函数也会自动用this指针作为第一个参数来接收注:你不能在形参那里显式写this指针,但是你可以在函数里边用5.类中会自动生成六个默认成员原创 2024-05-11 16:43:20 · 922 阅读 · 0 评论 -
初识C++
但是由于b没有被const修饰,所以。注:inline仅仅是给编译器的一条。,使用方式类似于int,但不完全相同。权限可以缩小,平移,但不能放大。这些的,编译器都会生成一个具有。,具体看编译器想不想实现。强制类型转换、+-*/在某些情况下会出乎意料。,但是有NULL指针。不能够声明和定义分离。尽量用nullptr。原创 2024-05-05 10:50:24 · 184 阅读 · 0 评论 -
C语言排序
我这里是统一排成升序。原创 2024-05-03 21:52:08 · 497 阅读 · 0 评论 -
C语言二叉树和堆
1.栈、队列和顺序表都是线性结构但是二叉树不是,二叉树是多分支结构2.任何一棵树都可以拆分为子树和根节点,许多二叉树的相关问题都是用分治的思想进行函数的递归进行解决。例:前序,中序,后序遍历二叉树3.二叉树链表实现可以用左孩子、右兄弟的方法来找到各个节点图:如上图,就可以找到二叉树中的所有节点。但缺点是:空间存在不小的浪费。原创 2024-05-02 18:07:50 · 753 阅读 · 0 评论 -
C语言的栈和队列
栈是一种特殊的线性表,其只允许在固定的一端进行插入和删除元素的操作。进行数据插入和删除的一端是栈顶;另一端被称为栈底。1.栈中的数据遵守后进先出原则2.栈的插入操作叫进栈/压栈/入栈,入数据在栈顶栈的删除操作叫出栈,出数据也在栈顶3.栈顶进栈顶出。原创 2024-04-28 23:14:44 · 258 阅读 · 0 评论 -
顺序表与链表的区别
反观链表:因为链表的空间通常都是不连续的,所以编译器在加载某一个数据的时候,虽然往后加载了一些数据,但是有较高概率没能加载到该节点的下一个节点数据,那么在你访问下一个节点的时候,编译器就得重新加载,所以执行效率就低了。那么对于顺序表:编译器在加载某一个数据的时候,就会顺便加载该数据地址往后的一些数据,那么在你访问他们的时候,编译器就不需要重新加载该数据,所以执行效率就高了。计算机的局部性原理:计算机在加载某一个数据时,会顺便加载该数据地址往后通常是几十个字节的数据。2.扩容时会有效率的损失和空间的损失。原创 2024-04-28 23:14:24 · 249 阅读 · 0 评论 -
常见的时间复杂度(1修)
冒泡排序:O(N ^ 2)二分查找:O(logN)原创 2024-04-27 16:56:45 · 111 阅读 · 0 评论 -
数据结构——复杂度(时间,空间)
最上边的冒泡排序的空间复杂度就是1,因为他只用了常数次的临时变量,或称为只开辟了常数次的空间,所以按照第2点的推导方法,得冒泡排序的空间复杂度为1。那么n - (n - 1) + n - (n - 2)+ ……+ n - 3 + n - 2 + n - 1 即时间复杂度的具体表达式。(2).在得到了具体的复杂度表达式之后,只保留该表达式的最高阶项,并将前边的系数改为1。倒数第二个元素(即第n - 1个元素)想要排列完毕则要经过n - (n - 1)重循环。0.时间复杂度指的是算法中的基本操作的执行次数。原创 2024-04-27 16:34:37 · 671 阅读 · 0 评论