- 博客(12)
- 收藏
- 关注
原创 Rust 语法初级
在一个 impl 块内,Self 指代被实现方法的结构体类型,self 指代此类型的实例,换句话说,self 指代的是 Rectangle 结构体实例,这样的写法会让我们的代码简洁很多,而且非常便于理解:我们为哪个结构体实现方法,那么 self 就是指代哪个结构体的实例。请求一定大小的内存空间。rust中是:变量的绑定 ,所有权的概念。不能单独作为特征对象的定义,例如下面的代码编译器会报错,原因是特征对象可以是任意实现了某个特征的类型,编译器在编译期不知道该类型的大小,不同的类型大小是不同的。
2024-09-01 23:42:10
1206
1
原创 Rust windows 环境的安装
对一门语言的学习,安装环境永远都是最麻烦的一件事情,这篇文章简单讲述我在windows环境下安装Rust,以及在 vscode 上面开始我的rust 学习之旅。rustup 是 Rust 的安装程序,也是版本管理程序,本文也是使用 rustup 来安装 Rust。
2024-08-14 13:14:05
3560
4
原创 数据结构-----二叉搜索树(C++)
二叉搜索树,它如果不为空树,则它满足条件:1.左子树不为空,则左子树上的所有节点值小于根节点的值 2.右子树不为空,则右子树上所有节点值大于根节点的值 3.它的左右子树也分别为二叉搜索树。二叉搜素树非常重要对于C++的学习来说,之后设计到的容器set 和 map 所依赖的基础都是 二叉搜索树,二叉搜素树的删除是相对难的重点,插入的时候是有去重操作的,对于插入重复的值是不能够成功插入的。希望大家能好好吸收这一章所讲述的内容,仔细研究代码,自己画图进行理解。
2024-08-08 19:54:37
801
原创 数据结构----堆(C语言实现版本)
堆可以分为大堆与小堆。(与顺序表(可以看前几篇文章)相比,新加的两个算法是一个向上调整,与向下调整,除此之外并无其他。图有点丑,希望能帮助大家理解,下一篇文章会是二叉树的,以及堆的构建。接下来是一个小堆的实现,堆的搭建是一个难点,这篇文章先不讲解,之间给push出一个堆。堆总是一颗完全二叉树(树,会在接下来的文章里讲解):这就导致了堆用顺序表更加好表示。AdjustDown( ) //向下调整算法。AdjustUp( ) //像上调整算法。
2024-05-07 20:37:49
538
1
原创 C++类与对象 时间的练习
类和对象,可以说是C++语言很重要的一环,但是在这里不做过多的讲解,仅仅提供一个时间的实现来体会,主要涉及的是 析构函数,构造函数,拷贝构造函数,和各种的重载(如前置与后置等诸多问题)// 获取某年某月的天数 这个函数是很关键的,有助于获取具体哪一个月的天数有几天,方便于后续的操作。// 拷贝构造函数 拷贝构造,传的是引用,有助于效率的提升。// 赋值运算符重载 传引用,传出引用,有助于更加高效。// 日期 += 天数(于本身做修改)// ==运算符重载。// >=运算符重载。// <=运算符重载。
2024-03-19 00:12:38
762
1
原创 数据结构的学习----栈的实现
栈:特殊的线性表,仅仅可以在固定一端进行插入和删除元素这回的栈是用C++实现的,C++相对于C语言的实现,有更多好处。直观上看,代码量是明显减少的,不需要传递指针,只需要在类中之间调用其中的方法,this指针指向创建的对象,被默认传递。构造函数与析构函数减少了遗忘初始化与销毁的函数。变量的调用也更是方便好用。之后也会更新C++相关文章以及剩下的数据结构。
2024-03-13 17:15:54
886
原创 python的学习笔记(简单入门)
jsonData = [{"name": "李奎", "age": 20}, {"name": "韩苗", "age": 21}, {"name": "柳文", "age": 22}]jsonData = [{"name": "李逵", "age": 20}, {"name": "韩苗", "age": 21}, {"name": "柳文", "age": 22}]with open("test.csv", "w",newline="") as fp: # 若不加newline=""则会出现空行。
2024-02-23 00:16:17
970
1
原创 [数据结构] 双向带头链表的学习
1.带头可能对初学者来说是一种优势,因为有了头(哨兵位),不需要运用二级指针,因为第一的位置已经确定,(二级指针用在不带头的修改头的值), 相对来说可能更加好理解,但是带头,这个头哨兵位存储的数据却没有很大的意义,实践意义并不大.2.双向的链表,有一个好处,解决了单链表不能够找到前一个的问题,链表之间形成了循环,数据的修改更加便捷,当然相对而言也是更加复杂的.// 双向链表在pos的前面进行插入。// 双向链表删除pos位置的节点。//链表pos位置之前的插入。//链表pos位置的删除。
2024-02-23 00:13:44
920
1
原创 【无标题】 数据结构----单链表的学习
物理存储结构非连续,通过指针将链表的每一个节点联系起来。(可以类比火车)链表有很多分类,带头的链表,单向链表与双向链表,今天要讲解和实现的是单向链表,也是使用很频繁的一种数据结构。指针存储的是地址,当然可以存储结构体的地址,而访问结构体中的元素要做的是->访问结构体中的数据以及下一个节点。要修改结构体中的一些值,仅仅一级指针就可以。如果要修改指针的存储的值,在一个函数中,形式参数仅仅只是实际参数的一份拷贝,因此你需要修改指针的值时,需要调用二级指针。这个相当难点理解,如果能够画图深入分析很有帮助。
2024-02-04 23:35:10
851
1
原创 【无标题】 C语言:数据结构之顺序表
//动态顺序链表实现} SeqList;此处的typedef 是为了将复杂的,不是很好的一些名字重新命名而已,不需要畏惧很长的名字,没有很高大上。以下是要实现顺序表的一些功能,相对而言,这个CheckCapacity()是一个相对更加重要的实现。
2024-02-01 00:24:33
967
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人