- 博客(24)
- 收藏
- 关注
原创 中序遍历 (Inorder Traversal)
如果缺少它,所有右子树的节点都会被跳过,导致结果错误。顺序(左 -> 根 -> 右)。,并按照相同的方式继续遍历。
2025-02-19 15:26:16
468
原创 Java怎么标记全局变量
在程序的任何部分,通过GlobalState.getInstance().getGlobalVariable()和GlobalState.getInstance().setGlobalVariable(value)来访问和修改全局变量。这些方法可以模拟全局变量的行为,但是应该谨慎使用,因为它们破坏了封装,并可能导致代码的复杂性增加和维护困难。在程序的任何部分,通过Globals.getGlobalVariable()和Globals.setGlobalVariable(value)来访问和修改全局变量。
2024-12-23 15:03:02
387
原创 软件设计原则(1)
在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据6条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。
2024-12-17 20:37:22
380
原创 类和类之间关系的表示方式:
关联关系是对象之间的一种引用关系,用于表示一类对象与另一类对象之间的联系,如老师和学生、师傅和徒弟、丈夫和妻子等。关联关系是类与类之间最常用的一种关系,分为一般关联关系、聚合关系和组合关系。我们先介绍一般关联。关联又可以分为单向关联,双向关联,自关联。
2024-12-17 10:58:51
233
原创 力扣刷题-11盛最多水的容器
这道题最开始一直错在时间超时,最开始超时,由于时间复杂度为O(n^2),但实际上只需要O(n),最开始的思路是设置两个指针,一个指针不动,另外一个指针从它的下一个位置遍历到后面所有的位置,然后不动的指针向后挪一个位置,继续循环执行一样的操作,选择一个临时变量,记录最大的值。由①可知,移动left指针只会让体积变小,而移动右指针,一旦height[right]>height[left],则存在体积变大的可能。我们根据height[right],height[left]的大小比较,进行挪动。
2024-12-11 20:01:44
408
原创 力扣刷题--移动零
也就是我们可以通过一个指针判断现在我存储非零数组到那里了,最终判断到末尾之后,我们可以考虑剩下的位置全部置0。移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作。由于是不允许创建新的数组,可以考虑指针。,编写一个函数将所有。
2024-12-11 16:11:00
413
原创 MySQL下载遇到问题如何处理
利用net start 指令可以查看启动的Windows服务,发现其中MySQL仍然存在,但此时并没有安装成功启用,所以考虑对MySQL进行卸载,直接在这里面搜寻MySQL的痕迹,确保写在成功,(可以再利用net start命令行进行查看。即MySQL所需要的端口被占用,但是MySQL指定端口3306,所以怀疑是之前没有卸载干净。在下载MySQL时,遇到如下情况,需要打开控制面板里面的程序与功能。这样下来就可以正常安装了。
2024-12-11 10:45:45
293
原创 反转链表的两种解法
结合上一篇提到的递归思路,我们首先先对这个链表进行递归,我们走到深处获取其中最底层的元素,随着递归的回溯,我们可以得到链表的反转。我们从n1中读取一个链表的值,我们就存入到n2中,以头插入方式,实现链表的反转。反转链表的概念是,首先,我输入的链表,将以相反的顺序返回给我,返回的类型仍然是一个链表。链表中存在两个重要的值,一个next指向链表的下一个元素,val是当前元素的值。利用先调用递归,再执行函数,可以实现找到最底层元素,不断回溯,以图为例;n1指向传入的链表,n2为最终返回链表。
2024-12-07 15:34:42
315
原创 力扣 704
时间复杂度分析: 每次循环都将搜索区间缩小一半,所以循环的次数最多为logN,N为数组的长度。如果中间元素小于目标元素,说明目标元素在右半部分,将i更新为m+1,继续下一轮循环。然后,判断中间元素和目标元素的大小关系。如果中间元素大于目标元素,说明目标元素在左半部分,将j更新为m,继续下一轮循环。然后,使用一个循环,不断缩小搜索区间,直到找到目标元素或者搜索区间为空。如果循环结束后还没有找到目标元素,说明目标元素不存在于数组中,返回-1。如果中间元素等于目标元素,说明找到了目标元素,直接返回中间索引m。
2024-11-30 16:25:37
262
原创 算法复杂度
其中c表示常熟,而f(n)为实际执行代码行数与n的函数,g(n)经过化简,变化趋势与f(n)一致的n的函数。(c)为包含起来的,既可以表示渐进上界也可以表示渐进下届,为渐进紧届。从(a)出发,从n0开始g(n)总在上面,叫做渐进上界。同理,(b)中为渐进下届。
2024-11-30 10:31:34
324
原创 数据结构与算法
应该是数据结构掌握的不够牢固,准备开始学数据结构,一边学一边刷题,我将创建这个专栏,喜欢的可以给个关注还有赞。由于发现刷题很多题有思路,但是总是超时,
2024-11-29 21:14:59
105
原创 最长公共前缀
/ 使用 StringBuilder 来构建公共前缀。// 取第一个字符串作为基准。return "";// 如果数组为空,返回空字符串。
2024-11-21 15:44:01
170
原创 常量指针,指针常量
可是用char*重写了声明语句后,数据类型就变成了char,*成为了声明符的一部分。前后两种声明含义截然不同,前者声明了一个指向 char的常量指针,改写后的形式则声明了一个指向 const char的指针。上述两条声明语句的基本数据类型都是constpstring,和过去一样,const是对给定类型的修饰。pstring实际上是指向char的指针,因此,constpstring就是指向char的常量指针,而非指向常量字符的指针。// ps 是一个指针,它的对象是指向char 的常量指针。
2024-05-20 18:39:33
464
原创 信息论知识总结
通信系统中传递的形式是消息;通信的实质是通过消息的传递,消除不确定性,获得信息。最近在学习信息论的知识,所以打算在博客记录一下,也当作总结。信息不等价于情报,也不等同于消息,更不等同于知识。信息是事物运动状态或者存在方式的不确定性的描述。消息是信息的载体,信息是抽象的传输主体。在B站看的课程,也当作督促自己。
2023-04-03 15:31:22
196
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人