- 博客(36)
- 收藏
- 关注
原创 C++ 类构造与析构:默认、拷贝、赋值及特殊成员函数解析
本文概述了C++类中的六种关键成员函数:默认构造函数、析构函数、拷贝构造函数、赋值运算符、递增运算符以及const成员函数。每个函数的作用、特性和使用场景都通过代码示例进行了阐释,旨在帮助读者深入理解C++面向对象编程的核心概念。
2024-10-16 11:54:32
777
1
原创 C++中的面向对象编程:类、对象和this指针的深入理解
本文概述了C++面向对象编程的基础知识,包括类的定义、对象的创建、成员函数和变量的访问控制,以及this指针的作用。通过比较C语言的面向过程特性和C++的面向对象特性,阐述了类和对象如何简化复杂问题的解决。此外,还讨论了内存对齐规则和封装、继承、多态等OOP核心概念。
2024-10-03 16:27:39
593
原创 C++编程基础:内联函数、auto关键字、基于范围的for循环和nullptr
本文介绍了C++编程中的几个重要概念,包括内联函数的使用和特性,auto关键字的类型推导机制及其使用规则,基于范围的for循环的语法和使用条件,以及nullptr在指针控制中的应用。
2024-09-28 09:36:51
728
原创 C++中的函数重载、引用及其应用
本文介绍了C++中的函数重载和引用机制。函数重载允许定义多个同名函数,只要它们的参数列表不同。文章通过实例展示了函数重载的三种形式:参数类型、参数个数和参数类型顺序的不同。同时,探讨了引用的概念,包括其必须初始化、不可更改和与原始变量共享内存的特性。文章还讨论了常引用的使用,以及引用在函数参数和返回值中的应用,强调了引用比指针更安全且易于使用。最后,比较了传值和传引用的效率,并指出了引用与指针的主要区别。
2024-09-25 16:00:52
411
原创 C++ 编程基础:命名空间、输入输出和缺省参数详解
这篇文章的摘要可以是:本文详细介绍了 C++ 编程语言中的几个核心特性,包括命名空间、输入输出流和缺省参数。文章首先解释了命名空间的概念,它的作用是为了避免全局命名冲突,并通过示例展示了如何定义和使用命名空间。接着,文章探讨了 C++ 的输入输出机制,强调了 `iostream` 库的重要性,并展示了如何使用 `cout` 和 `cin` 进行数据的输入输出操作。最后,文章介绍了缺省参数的概念,包括全缺省参数和半缺省参数的使用,以及在使用缺省参数时需要注意的一些规则。
2024-09-25 11:37:45
662
原创 数据结构-选择排序和堆排序
选择排序通过不断寻找未排序部分的最小和最大元素,并与边界元素交换,逐步缩小未排序区间,实现升序排列。这种方法简单直观,但效率较低,适合小规模数据集。堆排序则通过构建最大堆,然后逐个将堆顶元素与末尾元素交换并调整堆结构,实现快速排序。它的时间复杂度为 𝑂(𝑛log𝑛)O(nlogn),适用于处理大规模数据集,且是原地排序,不需要额外存储空间。
2024-09-12 17:03:31
122
原创 数据结构-环形链表||
指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数。如果链表中有某个节点,可以通过连续跟踪。,返回链表开始入环的第一个节点。来表示链表尾连接到链表中的位置(,仅仅是为了标识链表的实际情况。返回索引为 1 的链表节点。给定一个链表的头节点。如果链表无环,则返回。,则在该链表中没有环。链表中有一个环,其尾部。
2024-08-29 21:32:18
244
原创 数据结构-环形链表
指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数。来表示链表尾连接到链表中的位置(索引从 0 开始)。如果链表中有某个节点,可以通过连续跟踪。链表中有一个环,其尾部连接到第二个节点。仅仅是为了标识链表的实际情况。,判断链表中是否有环。给你一个链表的头节点。
2024-08-29 18:37:28
228
原创 数据结构-相交链表
请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回。,函数返回结果后,链表必须。整个链式结构中不存在环。给你两个单链表的头节点。
2024-08-29 17:01:24
361
原创 数据结构-链表的回文结构
对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。给定一个链表的头指针。
2024-08-29 15:55:00
271
原创 对链表进行插入排序
在对链表进行排序时,可以使用哨兵位来创建虚拟头节点,我们需要用两个指针来对比前后的值是否是按排序的大小排列的,如果不是的话就可以将他们两个调换,同时还需要一个指针来遍历一下链表。
2024-08-07 15:15:31
144
原创 用栈实现队列
请你仅使用两个栈实现先入先出队列。boolean empty() 如果队列为空,返回 true;否则,返回 false。void push(int x) 将元素 x 推到队列的末尾。int pop() 从队列的开头移除并返回元素。int peek() 返回队列开头的元素。
2024-08-02 13:20:51
113
原创 喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以喝多少汽水,用C语言编写
【代码】喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以喝多少汽水,用C语言编写。
2024-04-28 20:49:23
90
原创 求最大公约数
1、辗转相除法:取两个数中最大的数做除数,较小的数做被除数,用最大的数除较小数,如果余数为0,则较小数为这两个数的最大公约数,如果余数不为0,用较小数除上一步计算出的余数,直到余数为0,则这两个数的最大公约数为上一步的余数。2、相减法:取两个数中的最大的数做减数,较小的数做被减数,用最大的数减去小数,如果结果为0,则被减数就是这两个数的最大公约数,如果结果不为0,则继续用这两个数中最大的数减较小的数,直到结果为0,则最大公约数为被减数。以下代码使用的是辗转相除法。
2024-03-30 19:12:40
369
1
原创 学习编程的记录
我是一名普通的本科生,想通过学习编程来找到一份满意的工作,在学习编程时,先树立一个目标,成为一名出色的软件工程师,打算每一周花50个小时来学习,争取早入学有所成,进入一家距离家里比较近的一家公司就业,这样就有更多的时间能够陪在父母的身边。
2024-03-21 23:15:59
140
原创 入驻优快云的自我介绍
我会通过翻阅优秀书籍和通过一些好的视频来学习c语言,还有学会自己调试代码,并在平时自己多多的练习。 每周我会花费大约4个小时的时间学习。 我想加入的it公司有很多:字节跳动、美团、B站等。
2023-10-14 10:52:16
63
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人