摘要: 以计数排序中的这段代码来解释东泰内存分配 int* CountArr = new int[maxx + 1]; new是C++的动态内存分配关键字,作用是: 1.在堆内存中开辟一块连续的空间; 2.空间大小是maxx + 1个int类型的元素(比如 maxx=9 时,就是 10 个 int); 3. 阅读全文
posted @ 2026-03-15 11:22 AlexXuu 阅读(1) 评论(0) 推荐(0)
摘要: 在计数排序中我们用到了迭代器找取源数据的最大值 int maxx = max_element(vec.begin(), vec.end()); max_element(vec.begin(), vec.end()) 这个函数的作用是找到容器中最大值的位置,但它返回的不是最大值本身,而是一个迭代器,你 阅读全文
posted @ 2026-03-15 11:05 AlexXuu 阅读(1) 评论(0) 推荐(0)
摘要: 判断稳定性的关键是: 两个一样大的数是否会在排序的过程中改变原来的相对位置 如果改变了,则该排序算法是不稳定的 阅读全文
posted @ 2026-03-12 20:37 AlexXuu 阅读(1) 评论(0) 推荐(0)
摘要: 空间复杂度衡量的是算法执行过程中,除了输入数据本身外,额外占用的内存空间大小。 以下是关于冒泡排序的空间复杂度是O(1)的详细解释: 1、从数量和大小上看,变量的数量和个数固定 输入数据:vector&vec是引用传递,没有复制原数组,不算额外空间 局部变量: int j:外层循环计数器,固定4字节 阅读全文
posted @ 2026-03-12 11:22 AlexXuu 阅读(3) 评论(0) 推荐(0)
摘要: 头文件的核心作用 1、声明接口,隐藏实现 可以把头文件理解为产品说明书,说明书上只写明这个产品能s做什么,但不会写产品内部是怎么实现的,即具体功能实现的代码,对应的.cpp文件是产品本身,包含具体的实现代码 2、统一管理公共内容,避免重复代码 当多个文件需要用到同一个变量、结构体、函数声明,把这些内 阅读全文
posted @ 2026-03-11 18:14 AlexXuu 阅读(4) 评论(0) 推荐(0)