自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 C++优先队列的重载(最小堆、最大堆)

C++优先队列默认是最大堆,所以如果我们要用到最小堆,就需要进行重载来使用。priority_queue的头文件是<queue>.1.less和greater,不利用struct进行重载。priority_queue<int, vector<int>, less<int>>s;//less表示按...

2018-09-06 14:22:00 581

转载 今日头条一面凉经

视频面,武汉今日头条后台开发岗,自身写C++的,招的是java岗,尴尬。问题:先做了一个题目,股票买卖最大利润的,leetcode原题。然后因为语言差别,所以就问数据结构,主要就问了map,hashmap,hash底层自己怎么实现,hash取模怎么实现的,怎么对hashmap进行查找,stack底层是什么,怎么设计,为什么,然后问了一点操作系统的...

2018-09-03 15:37:00 133

转载 金山WPS--C++面经

武汉金山,一共两面,两面都是问C++基础知识。一面:手写单例模式;struct和class的区别;如何删除vector的指定元素;四种智能指针;C++的封装继承和多态三种特性;多态如何实现的;一个类会默认生成的6个函数;冒泡排序;一个大文件,里面有很多种颜色,找出出现最多的10种颜色;vector,list,map的底层原理;手写重载拷贝构造函数;拷...

2018-08-29 17:55:00 461

转载 top-k,数组最小(大)的k个数

#include<iostream>#include<vector>using namespace std;void adjustHeap(int arr[], int i, int n)//3.调整大顶堆(仅是调整过程,建立在大顶堆已构建的基础上){ int j = i * 2 + 1;//子节点 while (...

2018-08-20 15:35:00 152

转载 字符串(数组)循环移位

前几天去腾讯面试,出的一道手写代码题目。假设有一个数组,[1,2,3,4,5],循环右移两位,变化为[4,5,1,2,3],当时写出来的代码是重新申请了一个数组,所以面试官又让我减少空间复杂度,代码如下:字符串翻转:void reverse(string &s,int begin,int end)//翻转数组{ while (be...

2018-08-07 16:19:00 439

转载 大数相乘

#include<iostream>#include<string>using namespace std;string multi(string a, string b){ int len1 = a.size(); int len2 = b.size(); //int t[MAX]; int len = len1...

2018-08-07 14:45:00 86

转载 排序算法--堆排序(C++)

#include<iostream>#include<vector>using namespace std;void adjustHeap(vector<int> &arr, int i, int n)//3.调整大顶堆(仅是调整过程,建立在大顶堆已构建的基础上){ int j = i * 2 + 1...

2018-07-18 11:02:00 74

转载 贪心--无重叠区间--C++

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例 ...

2018-07-17 16:13:00 600

转载 大端法,小端法,union

大端法与小端法计算机存储数据都是从低地址到高地址,如0x100到0x103存储,而大端法和小端法的区别就是存储数据时是取数据的低位存放在高地址还是高位存放在高地址。大端法:数据低位存放高地址。小端法:数据高位存放高地址。举个例子,现有一个int a,地址为0x12 34 56 78,从左向右是高位到低位对大端法而言,存放顺序是,12 34 56 78;对...

2018-05-27 22:45:00 160

转载 排序算法--插入排序(C++)

插入排序一般用直接插入法,时间复杂度:最好情况O(n),平均情况和最差情况复杂度为O(n^2)。基本方法是:序列分为有序列和无序列,然后每次从无序列取出一个元素,与有序列进行比较,插入进有序列,直至无序列为空。假设序列为[9,8,7,6,5,4,3,2,1]则产生有序列[9],无序列为[8,7,6,5,4,3,2,1];然后无序列取出8,插入有序列,得到...

2018-05-09 20:19:00 116

转载 排序算法-归并排序(C++、链表)

归并排序采用分而治之的方法,把n个元素按照非递减顺序排列。常用结构是:若n为1,则算法终止;否则,将序列划分为k个子序列(int k>=2)。先对每一个子序列进行排序,然后将有序子序列归并为一个序列。归并排序的时间复杂度是Ω(nlogn),平均复杂度和最坏复杂度均为Ω(nlogn)。假设现在初始段为[8,4,5,6,2,1,7,3]先分:[8,4,...

2018-05-05 21:25:00 236

转载 排序算法--快速排序(C++)

快速排序是冒泡排序的一种改进,属于交换排序,通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 C++中可以直接调用函数qsort()对数组进行排序。 void qsort(void *ba...

2018-03-30 20:47:00 98

转载 阿里C/C++一面(2)

在上次阿里二面跪了之后,阿里又打了一次电话给我换了个部门重新一面,哭,感觉一面还是不错的:上来先问项目,介绍自己的三个项目,分别说了流程,做法,中间问了我以后想做什么,还是和上次一样想确定我的方向,我坚定的说想做工程,做C++,这次没犯错。后面开始问基础部分了,这次比上次一面难多了,问问题一个接一个,o(╥﹏╥)o。C++部分:虚函数是什么,怎么构造实现...

2018-03-30 13:39:00 284

转载 数据流中的中位数:堆排序

题目:如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。如果数据在容器中已经排序,那么中位数可以由P1和P2指向的数得到,如果容器中数据的数目是奇数,那么P1和P2指向同一个数据。如下图所示:如图整个数据容器分隔成两个部...

2018-03-29 20:54:00 136

转载 STL--heap

heap即堆,头文件为#include<algorithm>,包括max-heap和min-heap,其中,max-heap在缺省的情况下是C++底层优先情况。本质是一颗以vector来实现的完全二叉树。最大堆的父节点大于等于任意子节点,最小堆小于任意子节点。如下图所示就是一颗完全的最大堆二叉树:heap的算法:1.make_heap((Fi...

2018-03-29 20:47:00 95

转载 阿里C++研发电话面试总结

一共进行了两面,二面有点心痛。一面:上来英语自我介绍,然后问了一下项目,接着开始问C++的基础,像多态;函数重载和重写;C语言能不能重载;栈变量,全局变量,静态变量的区别,内存中的位置;虚拟地址、逻辑地址定义和区别;然后问进程与线程的区别,三次握手四次挥手,中间问了select和epoll,没有回答出来,最后给了我一个链接,在线写两段代码,一个二叉树的前...

2018-03-29 17:11:00 695

转载 如何退出while(cin>>a)

1.输入非该类型的字符2.判断输入是否为\n;while (cin >> str) { t.push_back(str); i++; if (cin.get() == '\n') //关键在这里,\n不能用双引号。。。 { ...

2018-03-28 19:44:00 308

转载 网易深度学习视觉笔试总结

总共18个选择题,1个编程题,6个简答题重点是选择题和简答题。选择题主要考了一些基础,二叉树,散表链接,SVM的理论知识,哈夫曼树,边缘检测算子。简答题重点是FRCNN。总结:对SVM理论不熟,边缘检测算子不熟,FRCNN不熟,需要做一些总结和学习。 转载于:https://www.cnblogs.com/YiRanYouQin...

2018-03-27 23:32:00 307

转载 二叉树的遍历

前序递归遍历: void preOrder1(BinTree *root) { if(root!=NULL) { cout<<root->data<<" "; preOrder1(root->lchild); preOrder1(root...

2018-03-27 15:11:00 60

转载 约瑟夫环递归推导

约瑟夫环问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。通常解决这类问题时我们把编号从0~n-1,最后结果加1就是要求的解。约瑟夫问题递归公式推导过程:n个人(编号0~(n-1)),从0开始报数...

2018-03-25 21:39:00 173

转载 刷题小知识点

二维数组的指针写法:#include <iostream>using namespace std;int main(){ int a[3][4] = { 1,2,3,4,5,6,7,8,9,0,10,12 }; for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) ...

2018-03-23 22:10:00 103

空空如也

空空如也

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

TA关注的人

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