- 博客(37)
- 收藏
- 关注
原创 C语言之深入指针(3)
在指针的类型中我们知道有⼀种指针类型为字符指针char*;return 0;还有⼀种使⽤⽅式如下:int main()//这⾥是把⼀个字符串放到pstr指针变量⾥了吗?return 0;代码特别容易让同学以为是把字符串hello bit放到字符指针pstr⾥了,但是本质是把字符串hello bit.⾸字符的地址放到了pstr中。上⾯代码的意思是把⼀个常量字符串的⾸字符h的地址存放到指针变量pstr中。
2024-11-09 17:00:14 465
原创 类和对(3)
hello ,大家又来跟着bear学习了。一起奔向更好的自己class Timepublic:private:int _hour;class Datepublic:,_day(day),_n(1),_ref(xx)//,_t(1)elseprivate:// 声明int _year;int _month;int _day;// error C2512: “Time”: 没有合适的默认构造函数可用。
2024-10-22 22:29:30 713 58
原创 C++类和对象(2)
重点3个函数:构造、析构、拷贝函数。还有两个运算符重载,大家打起精神来!!类和对象非常非常有挑战,这是按照课件来帮助我理解。
2024-10-07 16:37:42 887 43
原创 C++ 类和对象(1)
接下来C++就要给我们上强度了,类和对象。这里不要问为什么,要多记忆哦,更多的是接受祖师爷(本贾尼·斯特劳斯特卢普)的想法。在 C++ 中,类(class)是一种用户定义的数据类型,它允许将数据(成员变量)和操作这些数据的函数(成员函数)封装在一起。类的定义可以包含构造函数、析构函数、公有成员、私有成员、静态成员、常量成员、类型定义等。•class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后⾯分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量。
2024-09-22 20:17:29 1045 43
原创 操作符详解
本节内容覆盖了很多操作符,涵盖了我们最常用的。即使有了操作符的优先级和结合性,我们写出的表达式依然有可能不能通过操作符的属性确定唯⼀的计算路径,那这个表达式就是存在潜在⻛险的,建议不要写出特别负责的表达式。
2024-09-22 20:16:47 1047 44
原创 浅谈C++入门(1)
本节内容重点是“ 命名空间 ” 、引用、缺参函数、重载函数。•定义命名空间,需要使⽤到namespace关键字,后⾯跟命名空间的名字,然后接⼀对{}即可,{}中即为命名空间的成员。命名空间中可以定义、变量、函数、类型等(和结构体有点像,但是结构体里面不可以定义函数,和结构体还有一个不一样的地方是花括号结尾不需要分号”;•namespace本质是定义出⼀个域,这个域跟全局域各⾃独⽴,不同的域可以定义同名变量,所以下⾯的rand不在冲突了。•C++中域有函数局部域,全局域,命名空间域,类域;
2024-09-13 22:07:40 990 15
原创 函数的递归
本节学习递归,重点看懂递归展开图。一、什么是递归?递归是学习C语⾔函数绕不开的⼀个话题,那什么是递归呢?递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。//main函数中⼜调⽤了main函数return 0;上述就是⼀个简单的递归程序,只不过上⾯的递归只是为了演⽰递归的基本形式,不是为了解决问题,代码最终也会陷⼊死递归,导致栈溢出(Stack overflow)。大家可以尝试一下使用递归写出斐波那契数的程序。
2024-09-13 22:06:57 965 53
原创 VS的调试技巧(非常重要哦!!)
本期内容非常重要这个是程序员必备的技能包!!1.什么是bug?bug本意是“昆⾍”或“⾍⼦”,现在⼀般是指在电脑系统或程序中,隐藏着的⼀些未被发现的缺陷或问题,简称程序漏洞。“Bug” 的创始⼈格蕾丝·赫柏(Grace Murray Hopper),她是⼀位为美国海军⼯作的电脑专家,1947年9⽉9⽇,格蕾丝·赫柏对Harvard Mark II设置好17000个继电器进⾏编程后,技术⼈员正在进⾏整机运⾏时,它突然停⽌了⼯作。
2024-08-21 16:28:37 949 52
原创 C语言基础之“ 函数 ”(9000字介绍)
哦吼吼~~~,终于来到了函数这个章节。跟上bear的脚步冲冲!!了解了库函数,我们的关注度应该聚焦在⾃定义函数上,⾃定义函数其实更加重要,也能给程序员写代码更多的创造性。3.1 函数的语法形式其实⾃定义函数和库函数是⼀样的,形式如下:ret_type fun_name(形式参数)•ret_type是函数返回类型•fun_name是函数名•括号中放的是形式参数•{}括起来的是函数体。
2024-08-21 16:28:14 1065 53
原创 C语言之“ 数组 ”
本期给大家介绍的数组主要内容包括:数组的一些概念、了解一维数组、二维数组。重点理解数组的储存是连续的,还有对二维数组的理解。自己实现一下二分查找!!
2024-08-20 09:57:31 1373 48
原创 数据结构之“ 排序 ”(简版)
本期内容是排序,介绍排序的概念、排序的运用和常见的七大排序简介。排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。内部排序:数据元素全部放在内存中的排序。外部排序。
2024-08-20 09:56:49 695 52
原创 堆的实现(偷懒版)
在上期内容介绍了二叉树、还简单提了一下堆的概念和大堆、小堆。回顾一下堆是首先是完全二叉树,因为是完全二叉树所以使用数组储存比较合理。本节重点堆的向上、向下调整算法的代码实现 和 复杂度计算。
2024-08-09 23:00:50 1024 51
原创 C语言之“ 分支和循环 ” (2)
接着上期写的,本期内容包含:switch语句、for循环、while循环、do while循环、break和continue、goto语句这些。分支和循环大致内容就这样结束了,下期给大家带来使用分支和循环实现的“ 猜数字 ” 游戏!!
2024-08-09 22:59:20 1555 71
原创 LeetCode热题 翻转二叉树、二叉树最大深度、二叉树中序遍历
那我们就需要封装成另外一个函数来实现了void preorder(struct TreeNode* root, int* res ,int* returnSize)函数目的实现中序遍历后的储存数据。我们要好好的体会一下,中序遍历的写法 左子树 、根 、右子树。
2024-07-30 23:25:31 1352 67
原创 二叉树的介绍(1)
本期内容介绍二叉树这个数据结构,包括二叉树的一些概念和性质。二叉树的内容比较多,所有我分了很多期来介绍。我们做到点到为止即可!!下期预告堆的实现。
2024-07-30 23:24:53 1195 38
原创 通过“ 栈 ”实现“ 队列 ”
在上期博客中我们通过在队列里面进行数据倒换来成功的实现了栈,那我们试试能不能通过在两个栈里面倒换数据来实现队列呢?根据之前的实现“ 栈 ”的经验我们可以重新定义一个结构体里面储存着两个栈就可以了,一个用来入数据一个用来出数据ST pushst;ST popst;} MyQueue;我们完成栈和队列的互相实现,我们对栈和队列的理解就加深了一点。后面也会在带来一些关于队列和栈的题目,从而进一步加深。
2024-07-25 18:27:28 1233 26
原创 C语言之“ 分支和循环 ”(1)
C语⾔是结构化的程序设计语⾔,这⾥的结构指的是顺序结构、选择结构、循环结构,C语⾔是能够实 现这三种结构的,其实我们如果仔细分析,我们⽇常所⻅的事情都可以拆分为这三种结构或者这三种 结构的组合。我们可以使用 if 、 switch 实现分⽀结构,for 、 while 、 do while 实现循环结构。本期介绍了if语句、一些操作符,其中逻辑操作符在后面用处蛮多要多加学习和理解。!!
2024-07-25 18:26:56 1028 28
原创 C语言之“ 强制类型转换和scanf 、printf的介绍与使用 ”
本节介绍强制类型转换和scanf函数与printf函数,scanf和printf函数在我们前期的使用很广泛,所以要理解清楚。本节强制类型转换、printf、scanf函数介绍完毕。文字过多,多看代码帮助理解。
2024-07-14 23:12:47 1167 33
原创 数据结构之通过“ 队列 ”实现的“ 栈 ”功能。
本节内容是利用“ 队列 ”先进先出的特点 实现 “ 栈 ” 先进后出。我们这里的代码都是基于队列来实现的,我们要掌握这个倒换数据思路来解题。!下期见ヾ(•ω•`)o。
2024-07-14 23:12:14 1474 44
原创 数据结构之“队列”(全方位认识)
上期博客介绍了” 栈 “这个数据结构,他具有先进后出的特点。本期介绍“ 队列 ”这个数据结构,他具有先进先出的特点。目录前言一、队列1.1队列的概念及结构1.2队列的实现1.2.1队列结构体定义1.2.2初始化和销毁1.2.3队尾插入和队头删除1.2.3.1队尾插入1.2.3.2队头删除1.2.4获取队头与队尾数据1.2.5返回队列里面的元素个数1.2.6队列判空1.3测试代码1.4代码展示头文件实现功能文件.c总结下期预告通过栈和队列互相实现对方的功能。
2024-07-07 15:59:55 1224 16
原创 数据结构之“栈”(全方位认识)
栈是一种数据结构,具有" 后进先出 "的特点 或者也可见说是 ” 先进后出 “。大家一起加油吧冲冲冲!!因为我们这次实现的栈是基于数组实现的,我们就可以参考顺序表的结构体定义来改进。我们了解的栈的定义发现,栈顶元素一直有被提及。我们要定义栈顶,其次我们定义数组,但是为什么我们这边是用指针呢?其实这里数组等价于指针的,在学习指针的时候我们学习过所以我们就像理解指针那一样的思路就可以了。还有就是结构体里面定义指针动态内存管理、高效的内存管理、还方便栈的各种操作。这边提到了内存,也要定义一个数来计算是否满了。
2024-07-06 22:16:55 1344 9
原创 《C语言》认识数据类型和理解变量
大家好哦,bear又给大家跟新内容了。本节内容主要包含介绍各种数据类型、变量、各种操作符。大家跟上bear的脚步秩序前进冲鸭!C语⾔提供了丰富的数据类型来描述⽣活中的各种数据。使⽤整型类型来描述整数,使⽤字符类型来描述字符,使⽤浮点型类型来描述⼩数。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。下⾯盘点⼀下C语⾔提供的各种数据类型,本章节主要探讨内置数据类型。敲重点多注意前置和后置还有复合赋值,会出现一些很奇怪的题目。
2024-07-05 22:02:59 1406 56
原创 《C语言》认识C语言和了解常见概念
从篇博客开始我们正式学习C语言,这次学习大部分都是靠记忆和了解一些规则。不会很难,来跟上bear的脚步持续进步!!🌹🌹C语⾔中有⼀批保留的名字的符号,⽐如:intifreturn,这些符号被称为保留字或者关键字。•关键字都有特殊的意义,是保留给C语⾔使⽤的•程序员⾃⼰在创建标识符的时候是不能和关键字重复的•关键字也是不能⾃⼰创建的。C语⾔的32个关键字如下:注释是对代码的说明,编译器会忽略注释,也就是说,注释对实际代码没有影响。注释是给程序员自己,或者其他程序员看的。
2024-07-01 22:39:04 900 5
原创 单链表经典算法题2
这次介绍的题会比上次更有难度哦,宝宝们系好安全带。咱们出发了!做这种链表题一定要画图,结合图做起来比较好。好了我们的单链表经典算法题就结束了,不记得了就来bear这回顾哦。后期还会有其他题目讲解,有不同的想法也可以写道评论区,有写错的地方望指正。宝宝们晚安🌹🌹。
2024-06-20 23:19:36 677 8
原创 数据结构之“算法的时间复杂度和空间复杂度”
宝宝们,跟上bear的节奏继续进步!今天我们学习的目标:1.算法复杂度的理解2.知道时间、空间复杂度的概念3.学会使用大O表示法4.计算常见复杂度例题学习复杂度是为了让我们在解决一些问题会有多种想法,通过计算复杂度来选择最优的思路。复杂度分析对于设计和评估算法的效率非常重要。通常我们希望设计出时间复杂度和空间复杂度都尽可能低的算法,以提高算法的性能和适用性。复杂度分析是算法设计和分析的核心内容之一。
2024-06-20 23:19:15 1037 8
原创 数据结构之“双向链表”
这里结构体里面有两个指针,分别指向前一个节点和下一个节点。typedef struct ListNode//双向链表是(带哨兵位双向循环链表) 单链表是(不带哨兵位单向不循环链表)//节点存放的数据//指向下个节点的指针//指向上个节点的指针相比与单链表和顺序表,双向链表还是比较简单的,双向链表的功能代码实现都大致相同。一定要自己去实现一下双向链表,其次每完成一个功能就要测试防止后面报太多错误。
2024-06-13 18:06:16 793 4
原创 数据结构之”单链表“
这里对int 和 struct SListNode 重新定义了一下方便后面使用。这里SL是单链表的缩写。//节点元素类型定义,方便修改typedef struct SListNode//单链表int data;//该节点的存储元素//下一节点的地址,为了找到下一节点}SLTNode;单链表看似复杂,但是我们只要滤清思路就可以很快的理解。单链表功能比较多,还希望各位热爱学习计算友友们下去一定要自己下去试试,不会了就来看看我和画画图,大家一起加油一起进步。
2024-06-04 23:13:41 766 10
原创 数据结构之实现“通讯录”
通讯录”是基于顺序表的基础上实现的项目,要熟悉顺序表才比较容易看懂和完成通讯录项目。在这个博客里面不会来介绍之前的东西,之前没看懂的可以到这边数据结构之”顺序表“。加上之前顺序表的两个文件一共是五个文件。test.c是实现联系人储存的文件,contact.c是通讯录的源文件,contact.h是通讯录的头文件,seqlist.c和seqlist.h是之前的顺序表的源文件和头文件。(源文件是功能实现的代码,头文件是用来包含一些头文件和定义一些东西)我们这里的联系人信息包含:姓名、性别、年龄 、电话、地址。
2024-06-02 12:35:03 1246 6
原创 【数据结构之“顺序表”】
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或者多种特定关系的数据元素集合。数据结构反映了数据的内部构成,即数据由那部分构成,以及数据元素之间呈现的结构。指针、结构体、动态内存管理,大家最好提前进行复习一下。1)能够储存各种数据2)储存数据方便查询3)要多看,多练习,整理好思路。
2024-05-24 22:24:46 1108 5
原创 喉咙疼的恐龙又来给大家介绍”芝士了“ 那就是文件操作
在程序设计中我们一般就考虑两种:程序文件,数据文件(从文件功能角度来进行分类为)。这里函数怎么用会单独出一篇博客,这里就是罗列一下。
2024-04-24 23:01:20 853 1
原创 喉咙痛的恐龙介绍“结构体是啥子(2)和联合,枚举”
我们先要知道位段是基于结构体实现的。因为位段是基于结构体的所以和结构体是相似的,就说说不同点1.位段必须是int,unsigned int ,singed int ,在C99里面位段的其他成员类型也行。2.位段的成员名后面会跟着一个冒号和数字strucr Bint a:2;//数字表示占几个bit位 这里是2个bitint b:5;//5个bitint c:10;//10个bitint d:30;//30个bit位段的作用就是用来节约空间的!!!,其次还是二进制位。
2024-04-20 21:22:05 756 12
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人