自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 第十四期——另一棵树的子树 二叉树遍历

数据结构第十四期——另一棵树的子树和二叉树的遍历,二叉树是数据结构中的一种重要结构,是考试或者面试中经常遇到的经典问题,通过练习掌握二叉树的结构并熟练运用是很有必要的。

2025-03-09 10:00:00 903

原创 第十三期——相同的树 对称二叉树 翻转二叉树

数据结构第十三期——二叉树,二叉树是数据结构中一种重要的结构,判断两棵二叉树是否为相同二叉树,对一棵二叉树进行翻转以及判断一棵二叉树是否是对称结构等问题都是有关二叉树的经典问题。

2025-03-07 10:30:00 912

原创 第十二期——二叉树

数据结构第十二期——二叉树,二叉树是数据结构中一种重要的数据存储结构,对二叉树进行前序遍历是在使用这种结构是必不可少的操作。同时,求二叉树的最大深度和判断一棵树是否为单值二叉树等相关操作都是十分重要的。

2025-03-06 10:30:00 467

原创 第十一期——设计循环队列

数据结构刷题第十一期——设计环形队列。题目:设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。

2025-02-27 09:30:00 556

原创 第十期——用栈实现队列

数据结构第十期——用栈实现队列:请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty),用栈实现入队操作很容易,由于栈只允许在固定的一端进行插入和删除元素操作,而队列只允许在一端进行插入数据操作,所以我们用第一个栈来入队,用第二个栈来出队,当第二个栈为空的时候,将第一个栈中的元素倒到第二个栈中。

2025-02-26 14:30:00 795

原创 第九期——用队列实现栈

数据结构第九期——用队列实现栈:请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。两个队列保持一个为空,向不为空的队列插入元素,如果想要删除元素,就用空的队列来倒元素。

2025-02-25 14:30:00 707

原创 第八期——随机链表的复制

数据结构刷题第八期——随机链表的复制。给你一个长度为n的链表,每个节点包含一个额外增加的随机指针random,该指针可以指向链表中的任何节点或空节点。构造这个链表的。深拷贝应该正好由n个节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的next指针和random指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。

2025-02-24 14:30:00 818

原创 第七期——环形链表2

数据结构第七期:环形链表。环形链表是面试和考试中经常遇到的问题,应该如何判断一个链表是否带环?如果链表带环,能否找到链表进入环结构的第一个节点?本期提供两种思路找到链表进入环的第一个节点,一种是公式法,一种是转换法。

2025-02-23 14:30:00 530

原创 第六期——nowcoder 链表分割 相交链表

数据结构刷题篇第六期——熟悉了单链表的结构之后,我们会经常遇到相交链表、环形链表,那么我们应该如何判读两个链表是否相交,或者一个链表是否有环呢?仔细思考我们发现,如果两个链表相交,那么它们一定有相同的尾节点,所以我们通过判断两个链表的尾节点是否相同就可以判断这两个链表是否相交了;对于环形链表来说,我们需要使用快慢指针来判断链表是否存在环结构。

2025-02-22 14:30:00 539

原创 第五期——LeetCode 876链表的中间节点 面试题02.02返回倒数第k个节点 206反转链表 nowcoderOR36 链表的回文结构

数据结构算法刷题篇第五期,四道经典问题帮助理解单链表的结构特点,并运用指针对单链表进行操作。包括通过使用快慢指针快速找到单链表的中间节点和单链表的倒数第k个节点,运用三指针实现单链表的反转,并结合这两种方法判断链表的回文结构

2025-02-21 09:30:00 814

原创 第四期——LeetCode 203移除链表元素 21合并两个有序链表

数据结构算法刷题篇第四期:将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的,这是链表中的一个经典问题,学习了单链表的结构之后你会发现,这道题的本质其实就是建立一个新的链表并对新链表进行尾插,通过本期内容可以更熟练的了解单链表的数据结构。

2025-02-20 14:30:00 1771

原创 第一、二、三期——LeetCode 26删除有序数组中的重复项(面试题)17.04消失的数字 88合并两个有序数组

数组nums包含从0到n的所有整数,但其中缺了一个,如何找到nums数组中缺少的数字?本期提供两种方法解决问题:因为nums中包含了从0到n的所有整数,所以nums数组中所有数字的和是已知的,而从0到n的所有整数的和也是已知的,我们再将两者求得的和相减,就可以知道缺了那个数字;把数组nums的所有元素和从0到n的所有整数都异或在一起,最终的结果就是只出现了一次的数字,而这个数字就是nums中缺少的数字。

2025-02-20 09:30:00 577

原创 程序环境和预处理

在ANIS C的任何一种实现中,都存在两个不同的环境:翻译环境和执行环境。在翻译环境中,源代码被转换成可执行的机器指令;执行环境用于实际执行的代码。在翻译环境中,组成一个程序的每个源文件通过编译过程分别转换成目标代码,然后每个目标文件由链接器捆绑在一起,形成一个单一而完整的可执行程序,链接器同时也会引入标准C函数库中任何被该程序所用到的函数,而且它可以搜索程序员个人的的程序库,将其需要的函数也链接到程序中。

2025-02-13 13:36:31 609

原创 文件的输入输出

磁盘上的文件是文件。在程序的设计中,我们一般谈的文件分为两种:程序文件和数据文件。而我们要讨论的是数据文件。我们之前所处理的数据的输入和输出,都是以终端为对象,即从终端的键盘输入数据,运行结果输出到终端显示器上。实际上,常常需要将一些数据(运行的最终结果或中间数据)输出的到磁盘上保存起来,以后需要的时候再从磁盘中输入到计算机内存。这就要用到磁盘文件。为了简化用户对输入输出设备的操作,是用户不必区分各种输入输出设备之间的区别,操作系统把各种文件设备都统一作为文件来处理。

2025-02-11 18:24:56 807

原创 动态内存管理

我们通常掌握的内存开辟方式有int num=20;和char arr{20}=0;但是上述变量被分配在内存的栈区,它们的空间开辟的大小是固定的,但是对于空间的需求,有时候我们需要的空间大小只有在程序运行的时候才知道,所以C语言允许建立内存动态分配区域,这个自由存储区被称为堆区。可以根据需要,向系统申请所需空间的大小。本篇文章介绍了C语言提供的动态内存开辟函数和内存释放函数

2025-02-11 14:41:33 668

原创 结构体、枚举与联合详解

在C语言中,自定义的类型(如结构体、枚举和联合)是编程中非常重要的工具。它们不仅增强了代码的可读性和可维护性,还为程序员们提供了更灵活的数据组织方式。

2025-02-07 19:23:37 617

原创 字符和字符串的库函数

C语言提供了丰富的库函数,这些函数被组织在不同的头文件中,以便于开发者在程序中调用。这些库函数涵盖了从数学计算到字符串处理,再到输入输出管理等多个方面。本篇文章主要介绍几个常见的字符和字符串的库函数。

2025-02-05 12:39:55 794

原创 数据在内存中是如何存储的?

想要分析数据在内存中的存储方式,我们首先要知道,数据是有类型的,不同的类型分配着不同的长度和存储形式。我们今天主要讨论的是基本类型的存储char //字符数据类型short //短整型int //整型long //长整型long long //更长的整形float //单精度浮点数。

2025-01-14 21:08:58 1027

原创 初识结构体

有了结构体类型,那如何定义变量,其实很简单。struct Stu//结构体成员int age;} s4,s5;//s4, s5也是结构体变量的 - 全局的int main()//s1,s2,s3也是结构体变量的 - 局部的return 0;如何初始化结构体呢?struct Stu//结构体成员int age;int main()struct Stu s2 = { "旺财", 21, "保密", 59.5f };return 0;当然,结构体里面也可以包含结构体。

2024-10-16 12:00:00 357

原创 初识C语言——指针初阶

每个地址标识一个字节,那我们就可以给 (2^32Byte == 2^32/1024KB == 2^32/1024/1024MB==2^32/1024/1024/1024GB == 4GB) 4G的空间进行编址。在32位的机器上,地址是32个0或者1组成二进制序列,那地址就得用4个字节的空间来存储,所以 一个指针变量的大小就应该是4个字节。那如果在64位机器上,如果有64个地址线,那一个指针变量的大小是8个字节,才能存放一个地址。平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量。

2024-10-14 20:36:43 585

原创 操作符详解

条件操作符也叫三目操作符exp1 ? exp2 : exp3如果表达式1为真,则计算表达式2的值,表达式2的结果就是整个表达式的结果如果表达式2为假,则计算表达式3的值,表达式3的结果就是整个表达式的结果

2024-10-05 14:08:29 1497

原创 青蛙跳台阶——函数递归思想

一只青蛙一次可以跳上 1 级台阶,也可以跳上2 级。求该青蛙跳上一个n 级的台阶总共有多少种跳法?

2024-10-01 10:48:13 639

原创 初识C语言——数组

在C语言中有关数组的知识你了解多少,本篇文章总结了有关一维数组的创建、初始化以及使用的内容,包括二维数组和数组越界的内容都有涉及。

2024-10-01 09:00:00 796

原创 汉诺塔小游戏——函数递归思想

在世界中心(在印度北部)的圣庙里,一块上插着三根宝石针。的在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。这就是古老的印度传说中著名的汉诺塔问题

2024-09-30 18:01:02 300

原创 初识C语言—函数

C语言中的函数是什么?库函数又是什么函数?我们又可以定义什么样的函数呢?关于函数参数、函数调用以及函数的嵌套调用和链式访问这些内容你都了解吗?你知道函数是如何声明和定义的吗?关于函数递归的奥秘你又了解多少呢?如果你刚刚进入C语言的大门,那么你一定很想一探究竟吧!

2024-09-26 17:40:09 877

原创 C语言中的分支与循环

C语言中的分支与循环分支语句:if、swich循环语句:while、if、do while

2024-09-17 10:32:53 2001

原创 初识C语言

什么是计算机的编程语言—计算机语言?汉语、日语、英语是人和人交流的语言,而计算机语言就是人和计算机交流的语言,有C语言、C++、Java、Python等上千种计算机语言,C语言只不过是其中一种而已,这是我与大家分享的有关C语言的大体框架,希望对你有帮助

2024-09-16 13:11:28 1816

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除