- 博客(328)
- 资源 (14)
- 收藏
- 关注
原创 vpp编译运行
1. git clone https://gerrit.fd.io/r/vpp2. make install-dep3. make build4. make run
2018-09-17 10:44:28
1061
1
转载 c++ bind和function用法
function是一个template,在一对尖括号中制定类型:function<int(int, int)> ,表示声明一个function类型,接受两个int、返回一个int的可调用对象,这个返回的可点用对象可以理解为函数指针。关于可调用对象的概念:对于一个对象或表达式,如果可以对其使用调用运算符,则称该对象或表达式为可调用对象。C++语言中有几种可调用对象:函数、函数指针...
2018-09-13 18:35:53
900
转载 CentOS内核编译安装
1.安装编译工具yum -y install gcc gcc-c++ ncurses ncurses-devel cmake elfutils-libelf-devel openssl-devel2.下载内核源码并解压进入源码安装包 推荐下载地址https://www.kernel.org/cd /usr/src && wget https://cdn.kerne...
2018-09-13 14:29:06
2334
转载 VM环境下CentOS扩展磁盘空间,并且增加逻辑卷HOME目录的大小
1. Vm虚拟机下Linux扩展原有磁盘空间,详细步骤如下:注意:linux只能扩展磁盘容量而不能减小, 所填写的容量为总容量,即包含已分区的磁盘,扩展容量时不能有快照哟,大家可以先把快照删除掉。 2. 启动客户机 fdisk –l 看到sda1和sda2已使用 3. fdisk /dev/sda 4. 重启客户机 reboot 重启lin...
2018-09-13 13:40:21
472
转载 __thread
__thread是GCC内置的线程局部存储设施,存取效率可以和全局变量相比。__thread变量每一个线程有一份独立实体,各个线程的值互不干扰。可以用来修饰那些带有全局性且值可能变,但是又不值得用全局变量保护的变量。 __thread使用规则:只能修饰POD类型(类似整型指针的标量,不带自定义的构造、拷贝、赋值、析构的类型,二进制内容可以任意复制memset,memcpy,且内容可...
2018-07-21 16:31:12
10735
转载 《手写代码必备手册》-实现几个字符串API
1. size_t strlen(const char *str)size_t strlen(const char *str){ const char *s; for(s = str; *s; ++s) { } return (s - str);}2. char* strcpy(char *to, const char *from)char* strcpy(char *...
2018-06-27 00:01:08
308
转载 《手写代码必备手册》-编程技巧
1. 把较大的数组放在 main 函数外,作为全局变量,这样可以防止栈溢出,因为栈的大小是有限制的。2. 如果能够预估栈,队列的上限,则不要用 stack, queue,使用数组来模拟,这样速度最快。3. 输入数据一般放在全局变量,且在运行过程中不要修改这些变量。4. 在判断两个浮点数 a 和 b 是否相等时,不要用 a==b,应该判断二者之差的绝对值fabs(a-b) 是否小于某个阈值,例如 1...
2018-06-26 23:15:45
1417
转载 unable to lock the administration directory (/var/lib/dpkg/) is another process using it
在 Ubuntu 或者它的衍生版如 Linux Mint(我已经作为日常工作使用的系统)中使用 apt-get 命令或者其相对更新的APT 管理工具时,你可能会在命令行中看到一个 unable to lock the administration directory (/var/lib/dpkg/) is another process using it 的错误。这个错误尤其对那些对这个错误原因不...
2018-06-11 10:08:00
621
转载 linux下 如何切换到root用户
默认安装完成之后并不知道root用户的密码,那么如何应用root权限呢?(1)sudo 命令 xzm@ubuntu:~$ sudo这样输入当前管理员用户密码就可以得到超级用户的权限。但默认的情况下5分钟root权限就失效了。(2)sudo -ixzm@ubuntu:~$ sudo -i通过这种方法输入当前管理员用户的密码就可以进到root用户。(3)如果想一直使用root权限,要通过su切换...
2018-06-05 18:12:18
465
转载 vmware 主机与客户机间无法复制的解决办法
如果你遇到vmware主机与客户机间无法互相复制粘帖的问题,你可以尝试:请先尝试:重新安装vmtools,具体请参考vmware文档:文档链接地址如果仍然不起效果,请尝试以下方法:(参考于:http://askubuntu.com/questions/691585/copy-paste-and-dragdrop-not-working-in-vmware-machine-with-ubuntu)1...
2018-06-05 17:41:10
1269
转载 安装VMware Tools显示灰色 && 虚拟机屏幕太小,设置中改为自动适应客户机没有用
首先问题如下:解决办法如下:1.关闭虚拟机;2.在虚拟机设置分别设置CD/DVD、CD/DVD2和软盘为自动检测三个步骤即可;3.再重启虚拟机,灰色字即点亮。
2018-06-05 10:40:51
10685
1
转载 VMware下ubuntu与Windows实现文件共享的方法
1、首先需要在ubuntu下安装vmware-tools来实现文件共享,却发现虚拟机那里显示为灰色的,无法安装vmware-tools,在共享文件夹那里设置好共享的文件夹也没有用,/mnt目录下什么都没有。 2、接下来就使用另一个方法开始安装vmware-tools: (1) 挂载镜像文件: 虚拟机->设置->硬件->CD/DVD.右边“连接”下面选择“使用IOS镜像文件”,浏览...
2018-06-04 15:08:37
515
转载 阿里实习生面试编程题
有个穷困的艺术家。他画了一幅超现实主义的作品《方块手拉手》。现在他已经把图画中手拉手的一排大小不一的方块都画出来了。现在要考虑上颜色了。可惜他手中的钱并不多了。但是他是个有追求的人,他希望这幅画中每两个相邻的方块的颜色是不一样的。你能帮他计算一下把这幅画上色后,最少需要花多少钱么。输入 N个方块,K个颜色接下来每列是各个方块染成不同颜色的价钱输出 最少花的钱输入4 32 3 29 1 47 8 1...
2018-05-10 17:40:30
496
原创 头条2018实习生笔试
输入解释:5是有5个用户,下一行输入5个用户对某一类文章的喜好程度k。3是有多少个查询,后面3行如2,4,5表示第二个用户到第4个用户之间有多少个用户的喜好程度为5. 输出这个数。这个题的核心是用了一个map,key是每一种喜好程度值k,然后把同一个k的用户id放在一个vector里。即map<int, vector<int>>,每一个查询直接在要查询的喜好程度k相应的用户...
2018-05-10 10:54:24
369
转载 算法题重定向输入输出
#include<iostream>#include<fstream>#include<stdlib.h>#include<stdio.h>#include<time.h>#define debug //提交代码时注释这行 int main(){#ifdef debug ifstream cin("C:\\Users...
2018-05-09 11:47:13
253
原创 刷题几个小技巧别忘了(持续更新)
1、用法:map的count函数(leetcode1)2、链表题:建一个-1的头结点(leetcode2)3、链表题:别忘了next啊啊啊啊啊啊,而且next之前确保指针不是NULL!!!(leetcode2)...
2018-05-07 17:12:40
843
转载 Linux线程属性总结
线程属性标识符:pthread_attr_t 包含在 pthread.h 头文件中。[c] view plain copy//线程属性结构如下: typedef struct { int etachstate; //线程的分离状态 int schedpolicy; //线程调度策略 ...
2018-04-10 22:27:48
214
原创 剑指offer7:重建二叉树
根据前序遍历和中序遍历的结果,重建二叉树#include<iostream>using namespace std;#include <vector>#include <algorithm>/* 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6...
2018-03-17 10:05:09
180
原创 关于string的find用法
两种用法:用STL里的algorithm:find(str.begin(), str.end(), 'j');这里必须用单引号,用双引号会出错。如果要查找字符串可以用第二种find方法用string里自带的:if(str1.find(str2) != string::npos) { ... };...
2018-03-14 16:28:55
2513
转载 STL面试
http://blog.youkuaiyun.com/tianya_team/article/details/507537591.说说std::vector的底层(存储)机制。 vector就是一个动态数组,里面有一个指针指向一片连续的内存空间,当空间不够装下数据时,会自动申请另一片更大的空间(一般是增加当前容量的50%或100%),然后把原来的数据拷贝过去,接着释放原来的那片空间;当释放或者删除里面的数据时...
2018-03-13 23:25:50
195
转载 如何正确的通过 C++ Primer 学习 C++(摘自知乎)
作者:知乎用户链接:https://www.zhihu.com/question/32087709/answer/54936403来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。个人经验,C++ primer 第一次可以跳着看。关键是要尽快用起来,在使用中熟练,而不是在细节中迷失。以C++ Primer第五版为例,第一遍读的时候:Part1也就是前七章,除了6.6,6...
2018-03-12 17:00:48
7168
转载 进程与线程的区别
a.进程是资源分配的基本单位,线程是cpu调度,或者说是程序执行的最小单位。在Mac、Windows NT等采用微内核结构的操作系统中,进程的功能发生了变化:它只是资源分配的单位,而不再是调度运行的单位。在微内核系统中,真正调度运行的基本单位是线程。因此,实现并发功能的单位是线程。b.进程有独立的地址空间,比如在linux下面启动一个新的进程,系统必须分配给它独立的地址空间,建立众多的数据表来维护...
2018-03-01 16:52:33
172
原创 ubuntu查看程序链接的时候用了哪些库
被问到我的程序里面用到opencv众多的库中的哪一个,我懵了。我的makefile里面是这样写的:g++ -g -o test test_create_pano.cpp pano_util.o testOpticalView.o -I /usr/local/include -I /usr/local/include/opencv -I /usr/local/include/opencv2 -L /...
2018-02-26 16:52:33
2205
原创 ubuntu安装opencv2.4.9
1. 先下载OpenCV的源码2. 解压到任意目录unzip opencv-2.4.9.zip3. 进入源码目录,创建release目录cd opencv-2.4.9mkdir release 4. 可以看到在OpenCV目录下,有个CMakeLists.txt文件,需要事先安装一些软件sudo apt-
2018-01-25 16:59:50
485
原创 MobaXterm连接远程服务器
下载一个MobaXterm,选择左上角Session,弹出界面中选择SSH,输入ip和port,登陆后输入用户名和密码,完成连接前提是服务器开启了ssh:sudo apt-get updatesudo apt-get install openssh-serversudp ps -e | grep ssh
2018-01-24 19:40:01
11976
原创 网易2018校园招聘编程题真题集合3字符串碎片
这道题不难,需要存下碎片的个数,就遍历字符串,保存刚刚遍历过的字符,如果这个字符和刚刚的字符不同,说明到了一个新的碎片,碎片个数+1.最后存储保留两位的double,用一个char数组来存,sprintf来写进去。#include #include using namespace std;int main(){ string str; while(cin >>
2017-12-12 21:51:02
435
原创 网易2018校园招聘编程题真题集合2相反数
这道题是说给出一个数,求他的“相反数”,相反数是先把原先的数倒过来,然后把他和倒过来之前的相加。#include #include #include using namespace std;int main(){ string n; while(cin >> n){ string rev = n; reverse(rev.begin()
2017-12-12 21:17:23
228
原创 网易2018校园招聘编程题真题集合1魔法币
一开始没有理解题意:这道题是说,每次把手头上的魔法币全都投入。这道题一开始用了回溯,只通过80%,大数据通不过。#include #include using namespace std;bool helper(int need, int have, string &s){ if(need == 0) return true; if(need < 0) return
2017-12-12 20:59:16
370
原创 类
类定义抽象数据类型->访问控制与封装->类的其他特性->类的作用域->构造函数再探->类的静态成员类的基本思想是:数据抽象和封装定义抽象数据类型struct Sales_data{ std::string isbn() const {return bookNo;} Sales_data& combine(const Sales_data&); double
2017-12-11 22:31:31
241
原创 华为研发工程师编程题3
这道题让把一个十六进制数转成十进制数。#include #include #include #include using namespace std;vector v = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};int main(){ string s
2017-12-11 20:18:10
325
原创 华为研发工程师编程题2明明的随机数
这道题就是给出一些数字,把他们排序输出,我直接用了set结构#include #include using namespace std;int main(){ int n; while(cin >> n){ set nums; int x; for(int i = 0; i < n; ++i){ c
2017-12-11 20:13:08
278
原创 华为研发工程师编程题1汽水瓶
这道题一看到智力题三个字还紧张了一下,觉得自己智力不太够用。但是这个智力题还是蛮简单的。设定一个变量total表示每一轮手上的空汽水瓶总数。total/3是这一轮能换的汽水瓶数,加到结果res里。total%3是剩下的汽水瓶数。两者加起来就是新一轮的total。注意total == 2的时候,res+1返回。total == 1或者total == 0,直接返回res#include u
2017-12-11 20:02:00
399
原创 华为2016研发工程师编程题3数独
这个题做了好几遍才写对……汗……太渣了。首先弄懂数独的规则:九个宫不能重复,同一行不能重复,同一列不能重复。这道题我的方法是回溯。递归传入的是整个矩阵,还有当前位置坐标i,j。然后1~9一个个试。填入这个位置之后就按照扫描顺序填下一个位置。#include #include using namespace std;bool isok(vector >& v, int
2017-12-10 12:50:09
595
原创 函数
函数函数基础->参数传递->返回类型和return语句->函数重载->默认实参->内联函数和constexpr函数->调试帮助->函数指针局部对象:会隐藏外层作用域中同名的其他所有声明,包括同名的函数局部静态对象:局部变量定义成static类型,那么这个变量在程序的执行路径第一次经过对象定义语句时初始化,并且直到程序终止才被销毁。示例:函数统计自己被调用了多少次size_t
2017-12-09 18:33:20
231
原创 语句
语句范围for语句C++11引入范围for语句,注意如果需要对序列中的元素执行写操作,循环变量必须声明成引用类型:vector v = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};for(auto &r : v) r *= 2; do while语句do while与while相似,区别是,do while语句先执行循环体后检查循环条件。至少执行
2017-12-09 11:37:26
203
原创 4. 表达式
表达式取地址&,解引用*,都是运算符,只不过这叫一元运算符。左值和右值以前的理解是能作为等号左边的就是左值,能放在等号右边的就是右值。那是C语言。C++中不一样,比如常量对象,不能放在等号左边,但是他是左值。C++中应该这样理解:当一个对象被用作右值的时候,用的是对象的值(内容);当对象被用作左值的时候,用的是对象的身份(在内存中的位置)。算术运算符+(正),-(负),*,/,%,
2017-12-09 10:53:49
277
原创 华为2016研发工程师编程题2字符集合
这道题算是比较简单的。我的方法主要是用find函数查看当前结果集中是否有这个字符,没有的话就加进去。#include #include #include using namespace std;int main(){ string str; while(getline(cin, str)){ string s; for(auto
2017-12-08 21:55:58
1151
原创 华为2016研发工程师编程题1删数
这道题我用的是创建循环链表的方法。注意链表的构建:struct ListNode{ int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {}};里面构造函数的这种写法一定牢记。可以把这一段专门记下来。#include using namespace std;struct ListN
2017-12-08 21:53:23
585
原创 华为2016校园招聘上机笔试题2扑克牌大小
这道题一开始我的想法是,读出一行,然后根据“-”的位置分成s1和s2.然后按照空格把每一张牌分开存在vector里然后比较。但是忒麻烦了,其实没必要,题目给的条件已经可以很简化了。首先发现,牌的种类恰好分别是1张,2张,3张,4张,5张。只要出现大小王,那么就输出大小王即可。所以这里不讨论2张中是大小王的情况。那么如果两个人的牌张数相同,那么说明是同一类型。如果张数不一样,说明不是同一类型不能
2017-12-08 20:35:54
371
原创 华为2016校园招聘上机笔试题2简单错误记录
首先,我发现我过程中要比较文件名和行号的组合,不仅如此,还要记录这个组合出现的次数。所以果断采用结构体:struct Error{ string filename; string line; int count;};剩下的不难,就是要求多,细节多。首先读入一个case:while(cin >> name >> num)去掉name里的路径,只留下完整的文件名,
2017-12-07 21:02:07
511
1Linux概论.ppt
2015-01-02
计算机应用软件012级2014ucos期中考试题
2014-11-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人