自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 如何给unordered_map 按照value进行排序

需要重写sort中的排序unordered_map不能直接排序,需要使用pair存在vector中#include<iostream>#include<map>#include<vector>#include<unordered_map>#include<algorithm>using namespace std;bool comp( const pair<int,int>& a, const pair&l.

2020-09-03 15:54:58 3775

原创 直接插入排序、冒泡排序、快排、简单选择排序、堆排序、归并排序 C++代码实现

插入类排序直接插入排序每趟将一个待排序的关键字按照其值的大小插入到已经排好的部分有序序列的适当位置上,直到所有待排关键字都被插入到有序序列中为止。void insertssort(vector<int>& R){ for(int i = 1 ;i <R.size();i++){ int j = i-1; int temp = R[i]; while (j<i &&j>=0 &&am

2020-08-16 17:25:27 305

原创 二叉树的遍历实现C++版(含前中后序遍历的递归版和非递归版)

二叉树是非常基本的数据结构,它的结构体可以写为如下: struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * TreeNode(int

2020-07-07 17:14:39 177

原创 queue与 priority_queue

queue常用函数push() 在队尾插入一个元素pop() 将队列中最靠前位置的元素拿掉,是没有返回值的void函数size() 返回队列中元素的个数,返回值类型为unsigned intempty() 判断队列是否为空的,如果为空则返回truefront() 返回值为队列中的第一个元素,也就是最早、最先进入队列的元素。注意这里只是返回最早进入的元素,并没有把它剔除出队列back() 返回队列中最后一个元素,也就是最晚进去的元素emplace(

2020-07-02 16:57:59 574

原创 string中的常用函数

常用的函数push_back(char c) 在string 结尾放置字符pop_back() 删除字符串的最后一个字符,将其长度减少1/string 中使用 push_back ()效率很低,尽量使用+=/substr (pos,n) pos 表示要截取的字符串的起始位置,n表示要截取的字符串长度substr(pos) 表示从pos位置开始一直截取到字符串最后一位toupper(c)转化为大写tolower(c)转化为小写assign() 赋值常用方法:直接用另一个字符串赋值

2020-07-01 22:40:53 427

原创 二分法中的mid溢出处理

在使用二分法过程中常常需要算mid的值,常见的算mid的方法就是 mid = (left +right)/2当处理比较长的有序数组时,left与right比较大,容易造成溢出,产生错误,比较常见的处理是 mid = left+(right - left)/2,从而避免了可能出现的溢出。另外 mid不一定等于 left/2+right/2,因为int/int 仍然为int ,没有小数部分,所以会出错。例如 : left = 3 ,right =5, left/2+right/2 = 3(left+

2020-06-30 22:25:03 1013

原创 装OMNET中make时,sim出现问题

JDK已装好,cmd中可显示JAVA版本号;MinGW已装好,gcc -v可显示正确的一长串信息:./configure也显示goodmake的时候出现问题如下:求哪位大神能解惑,万分感谢!!!!...

2020-06-29 21:05:32 422 3

原创 编程中的位运算

位运算的相关知识在本科计算机组成原理以及离散数学中学到了很多,在做LeetCode上的题的时候发现,位运算可以省掉很多的代码量。<< 与>>左移n位(<<n) 相当于给之前的数字乘以2^n右移n位(>>n) 相当于给之前的数字除以2^n-&对n进行n&(n-1)可以消掉n的二进制表达中最右边的1例如: 7的二进制为 1116的二进制为 110111&110 = 110 消掉了7的二进制表达中的最右边的1对n进行

2020-06-29 09:18:09 263

空空如也

空空如也

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

TA关注的人

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