自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mitos的博客

不定时分享C++、Shell内容~

  • 博客(61)
  • 收藏
  • 关注

原创 Shell——正则表达式

在Shell脚本中,正则表达式(Regular Expressions, 简称regex)是一种用于匹配文本模式的强大工具。正则表达式通常与命令如grep、sed、awk等结合使用,用于查找、替换或验证文本内容。以下是一些常见的正则表达式示例和它们在Shell中的应用:

2024-08-25 17:03:08 762

原创 Shell工具—— awk 的全方位讲解( 万字解析!!!)

awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有很多内建的功能,比如数组、函数等,这是它和C语言的相同之处,灵活性是awk最大的优势。

2024-08-24 17:47:17 1658

原创 Shell工具——sort

sort是一个在 Unix 和类 Unix 系统(如 Linux 和 macOS)中广泛使用的命令行工具,用于对文本文件中的行进行排序。它非常灵活,支持多种排序选项,如按数值、字典顺序排序,以及逆序排序等。是一个非常强大的工具,支持多种排序选项和模式,能够满足大多数文本排序的需求

2024-08-24 14:26:44 455

原创 Shell工具——cut

cut 是一个功能强大但简单的工具,在数据处理、脚本编写中非常有用,特别是当你需要快速提取结构化文本中的特定信息时。

2024-08-22 10:04:05 410

原创 Shell——系统函数和自定义函数

Shell——系统函数和自定义函数

2024-08-22 09:53:35 183

原创 Shell——读取命令read

在 Shell 编程中,read 命令用于从标准输入(通常是键盘)读取数据并将其存储在变量中。它非常适合用于交互式脚本,让用户能够输入数据。

2024-08-19 23:42:06 341

原创 C++新特性——枚举类(enum class),以及与传统枚举的区别

enum class 是 C++11 引入的一种枚举类型,称为“强类型枚举”或“枚举类”。与传统的 enum 相比,enum class 具有更严格的类型检查,并且避免了命名冲突。

2024-08-19 08:54:17 529

原创 数据结构:二叉树深度优先遍历的stack方法及三合一模板,C++实现

在二叉树的遍历中,前序遍历(Preorder)、中序遍历(Inorder)和后序遍历(Postorder)都可以使用栈来实现。

2024-08-18 23:47:03 714

原创 数据结构:二叉树的广度优先遍历与深度优先遍历(递归方法)。C++及其新特性分别实现

在二叉树的遍历中,广度优先遍历(BFS)和深度优先遍历(DFS)是两种常用的遍历方法。它们的遍历顺序和实现方法有所不同。以下是这两种遍历方法的详细解释和 C++ 实现

2024-08-18 17:46:51 1102

原创 Shell——流程控制语句(if、case、for、while等)

在 Shell 编程中,流程控制语句用于控制脚本的执行顺序和逻辑。这些语句包括 if、case、for、while 等,它们的使用可以使脚本实现更复杂的逻辑

2024-08-18 12:00:56 478

原创 Shell——运算符

在 Shell 编程中,运算符用于执行各种类型的操作,如算术运算、字符串比较、文件测试等

2024-08-18 09:50:08 333

原创 Shell编程——特殊变量

在 shell 编程中,有一些特殊变量(有时称为预定义变量或环境变量),这些变量在脚本中可以用来获取有关 shell 环境或传递给脚本的参数等信息

2024-08-18 09:31:08 342

原创 Shell内置命令——export

export 是一个Shell内置命令,用于将变量设置为环境变量,使其在当前Shell及其子Shell中都能被访问。环境变量通常用于配置Shell环境、系统行为、应用程序参数等。

2024-08-17 13:07:33 316

原创 Shell的系统变量和自定义变量

在Shell中,系统变量和自定义变量用于存储信息、配置环境和脚本执行时的参数。

2024-08-17 12:52:14 271

原创 c++的异常处理机制(try、catch、throw)

c++的异常处理机制

2024-08-10 18:46:23 634

原创 c++中std::endl 和“\n“ 这两个换行符有什么区别

std::endl和"\n"都用于在C++中生成换行符,但它们之间有一些重要的区别std::endlstd::endl"\n""\n"所以,如果只是想要换行并且不在乎即时输出,"\n"更高效;而如果需要立即看到输出结果,比如在调试时,可以选择std::endl。这里再给大家讲讲刷新输出流是什么,以及在调试中std::endl 和 "\n" 会有什么不同刷新输出流是指将输出缓冲区中的数据立即写入到目标设备(如屏幕、文件等)的过程。

2024-08-09 21:40:58 1560

原创 利用动态规划的思想改进杨辉三角,并进一步优化;c++实现

杨辉三角(Pascal's Triangle)是一个经典的数学问题,也可以用递归算法来生成。下面是一个使用C++递归计算杨辉三角指定行列值的代码示例。

2024-08-01 21:54:47 565

原创 汉诺塔问题

汉诺塔问题是经典的递归算法练习,描述了如何将一组不同大小的圆盘从一个柱子移到另一个柱子,且过程中只能借助第三个柱子。

2024-08-01 16:52:23 165

原创 尾递归解决栈溢出问题

尾递归是指递归函数的最后一个操作是递归调用本身,没有其他计算需要进行。这种情况下,编译器可以优化递归调用,重用当前的栈帧,从而减少栈的使用。

2024-07-31 17:21:15 318

原创 c++ 记忆化递归来提高斐波那契数列的计算效率

使用记忆化递归(也称为缓存递归)可以显著提高斐波那契数列的计算效率。这种方法通过将已经计算过的结果存储在一个数组中,从而避免重复计算。记忆化递归将时间复杂度降低到 O(n),因为每个子问题只计算一次。来存储已计算的斐波那契数。表示这些值尚未计算。

2024-07-31 17:17:02 301

原创 c++ 全局和静态变量是一样的吗,它们之间的区别

全局和静态在编程中是两个不同的概念,它们之间存在明显的区别。虽然它们在内存分配上可能属于相同的区域,但它们的作用域、生命周期和访问方式都有所不同。全局和静态在编程中是两个不同的概念,它们之间存在明显的区别。

2024-07-22 11:31:57 281

原创 c++ using namespace std的作用及注意事项

在C++中,using namespace std;是一个常见的指令,它用于简化标准库(Standard Library)中类和函数的引用。下面我将详细解释这个指令的作用和使用时的注意事项。

2024-07-01 19:40:19 497

原创 c++ auto的使用及其注意事项

在C++中,auto是一个类型说明符,用于自动类型推导。当编译器看到auto时,它会根据初始化表达式自动为变量选择正确的类型。这种特性在C++11及以后的版本中引入,并在C++代码中广泛使用,因为它可以帮助减少代码的冗余和提高可读性

2024-06-16 16:20:26 423

原创 形参被引用修饰导致实参传递没有发生拷贝的原理是什么,return一个变量的引用要返回拷贝的数据的原理是什么

在C++中,当我们谈论形参(函数参数)被引用修饰以及返回引用时,我们需要理解引用和拷贝之间的区别,以及它们是如何影响内存和数据传递的。

2024-06-16 14:44:34 321

原创 c++“二纯” 纯虚函数和纯虚析构

纯虚函数和纯虚析构的理解

2024-06-06 23:22:59 339

原创 c++11 constexpr关键字

constexpr是 C++11 引入的一个关键字,它允许在编译时计算表达式的值,并将这些值存储在程序的常量部分中。这意味着constexpr变量和函数可以在编译时进行求值,从而避免了运行时的开销

2024-06-06 22:57:07 521

原创 c++ map/multimap容器

在C++中,std::map和std::multimap是两种关联容器,它们包含了可重复的(对于multimap)或唯一的(对于map)键值对。这些容器都根据它们的键自动排序,并允许非常快速地根据键查找、插入和删除元素。

2024-06-01 22:58:38 615

原创 c++指针和引用 之间的详细

在C++中,指针和引用在作为函数参数时有一些相似之处,但也有一些关键的区别。让我们来详细讨论一下

2024-05-30 10:39:37 549

原创 c++指针悬空用nullptr还是NULL

在C++中,指针悬空(dangling pointer)是指一个指针指向了曾经有效但现在已经被释放或重新分配的内存。

2024-05-28 23:17:16 448

原创 c++ set/multiset容器

在C++标准库中,set和multiset是两种非常有用的关联容器,它们包含唯一元素(对于set)或可重复元素(对于multiset),并且默认情况下这些元素都是自动排序的。它们通过键(即存储的元素本身)来存储和检索元素,因此这些容器中的元素都是唯一的(对于set)或者可以有重复的(对于multiset)。

2024-05-26 21:39:25 526

原创 c++ list容器

std::list是 C++ 标准库中的一个双向链表容器。与std::vector(动态数组)和std::deque(双端队列)不同,std::list的元素在内存中不是连续存储的,而是分散存储并通过节点进行连接。这使得std::list在插入和删除操作上通常比std::vector和std::deque更高效,尤其是在列表的中间位置

2024-05-25 23:00:05 661

原创 c++ queue容器

在C++标准库中,std::queue是一个容器适配器,它提供了队列(FIFO - First In First Out)的数据结构。队列是一种特殊的线性数据结构,只允许在表的前端(front)进行删除操作,而在表的后端(back)进行插入操作

2024-05-23 22:44:33 739

原创 c++ stack容器

在C++中,std::stack是一个标准模板库(STL)中的容器适配器,它提供了一种后进先出(LIFO, Last In First Out)的数据结构。std::stack容器适配器基于底层容器(默认是std::deque,但也可以由用户指定)进行封装,只暴露了栈的基本操作接口。

2024-05-22 22:59:25 479

原创 c++ 右移操作符对整形操作

在C++中,右移操作符(>>)对于整数类型(如int、long、short等)的行为在二进制层面上主要取决于该整数是否是有符号的。

2024-05-20 22:26:18 401

原创 c++ 排序算法merge使用要求

在C++中,std::merge是一个算法,它用于合并两个已排序的范围(例如数组或容器中的一部分)到一个新的范围中。这个函数在头文件中定义。

2024-05-17 23:26:17 474

原创 c++ 成员函数reserve和resize

c++ 成员函数reserve和resize

2024-05-17 23:09:08 503

原创 c++11新特性 范围for循环 怎么用

范围for循环(Range-based for loop)是C++11引入的一种新特性,它提供了一种更简洁、更直观的方式来遍历容器(如std::deque、std::vector、std::list等)或数组中的所有元素。

2024-05-16 23:42:43 286

原创 c++ deque容器

std::deque(双端队列)是C++标准库中的一个容器,它支持在序列的两端进行快速插入和删除操作

2024-05-16 23:11:05 576

原创 c++ vector容器

在C++中,vector是一个动态数组,它可以根据需要自动增长和缩小。以下是对vector的基本概念和常用操作的详细解释:

2024-05-14 23:11:43 1216

原创 c/c++对于char*的理解(联合string容器)

在C和C++中,char*是一个指向字符(char)的指针。它经常被用来处理C风格的字符串,这种字符串是以空字符(\0)结尾的字符数组。

2024-05-13 22:29:24 568

空空如也

空空如也

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

TA关注的人

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