- 博客(4)
- 收藏
- 关注
原创 c++删除文件重复行
概述利用stl特性来实现文件重复行删除,先将文本行与所属行数(保证输出顺序不变)成对插入set容器,然后将set容器中元素转移至map中根据文本行所属行数进行排序,以达到删除重复行且文本顺序不变。时间复杂度(2n),空间复杂度(k+n)(k为string转hash值的最大值)实现#include<map>#include<string>#include<fs...
2019-04-16 20:47:26 1100 1
转载 c++基础
c++内存分配与堆栈区别内存分配在C++中内存分为5个区,分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。堆:堆是操作系统中的术语,是操作系统所维护的一块特殊内存,用于程序的内存动态分配栈:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。自由存储区:自由存储区是C...
2019-03-26 15:59:40 88
原创 c++基础
归并排序过程递归实现#include <iostream> using namespace std;const int LEN = 10;//将有二个有序数列a[first...mid]和a[mid...last]合并。 void merge(int a[], int first, int mid, int last){ int temp[10]; int i...
2019-03-26 14:41:00 176
原创 C++基础
C++基础1堆与堆排序堆的定义先定义完全二叉树:完全二叉树是一个特殊的二叉树,若某一二叉树的深度为n,除第 n 层外,其它各层 (1~n-1) 的结点数都达到最大个数,并且第 n 层所有的结点都连续集中在最左边,则该二叉树为完全二叉树。堆从形式上就是一颗完全二叉树,且若堆满足根节点的值总是小于(或大于)根节点的值,该堆称为小顶(大顶堆)堆的存储形式由于堆是一颗完全二叉树,比较适用于用...
2019-03-26 14:23:29 89 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人