YXT-第一次工作室面试心得
一次糟糕的面试前几天去面试学校的天高工作室,在半小时的一对多面试后,结果不如人意,归纳起来主要是自己的基础有点慌,加上自己总是在面试时开启的“暴走”状态,可算是凉凉。事后问面试过我的一个师兄,对方回答说:”我们觉得你的知识广度很广,但是深度还不够。“主要记录下面试时问到的几个不懂的基础部分吧(其实还是自己的基础不够扎实),以便以后补上漏洞 堆和栈的区别这个问题其实是很经典的问题,堆和栈的区别倒是在大一上学期看过,可是隔了这么久忘了也是很正常。 动态链表那时候面试的一位老师问我有没有亲自写过动态链表的实现,emmm,上学期倒是学过基本的数据结构,也写过一些数据结构的实现,但是印象中没有学过动态链表这种东西。记得大一上学期倒是用链表解决过一道题,不过到现在,也是忘了,凉了。 变量,指针,内存一位师兄在面试的时候提到过了数组变量在内存中是怎么存在,而且指针在内存是怎么进行运作的,同时还问了下定义一个指针指向数组有什么用?记得那时候回答得可不是很好,内存这方面的知识倒是有点缺乏,最近学java,老师也说过了内存的一点知识,得找个时间巩固了下。 大数据在开发中的作用 emmm,这个倒是有点...
异或
异或一些应用 参考:感受异或的神奇它的规则是若参加运算的两个二进位同号,则结果为0(假);异号则为1(真)。即0∧0=0,0∧1=1,1∧1=0 快速比较两个值可以用a^b == 0来快速比较两个值,效率会更高 使某些特定的位翻转0 ^ 1 = 1 1 ^ 1 = 0 例如:翻转10100001的第6位,答案:可以将该数与00100000进行按位异或运算:10100001 ^ 00100000 = 10000001 判断一个二进制数中1的数量是奇数还是偶数求10100001中1的数量是奇数还是偶数; 答案:1 ^ 0 ^ 1 ^ 0 ^ 0 ^ 0 ^ 0 ^ 1 = 1,结果为1就是奇数个1,结果为0就是偶数个1 不使用其他空间,交换两个值123a = a ^ b;b = a ^ b; //a ^ b ^ b = a ^ 0 = a;a = a ^ b; 一个整型数组里除了N个数字之外,其他的数字都出现了两次,找出这N个数字从{A B C B C D A}找出单个字母的D 用到: A ^ A = 0; 异或满足交换律、结合律 12345A ^ B ^...
排序函数sort
声明简介、比较函数、结构体排序 开始 排序用的函数是sort函数,包含在< algorithm >文件中。 sort()不仅可以用来给数字排序,还可以给字符串排序,默认的是升序,如果需要降序的话,可以自己写一个cmp回调函数(函数名可自拟,通常用cmp),然后在sort函数中,加上(cmp)函数名即可。 实现原理:sort并不是简单的快速排序,它对普通的快速排序进行了优化,此外,它还结合了插入排序和推排序。系统会根据你的数据形式和数据量自动选择合适的排序方法,这并不是说它每次排序只选择一种方法,它是在一次完整排序中不同的情况选用不同方法,比如给一个数据量较大的数组排序,开始采用快速排序,分段递归,分段之后每一段的数据量达到一个较小值后它就不继续往下递归,而是选择插入排序,如果递归的太深,他会选择推排序。 具体函数实现,请参考:http://www.cnblogs.com/fengcc/p/5256337.html 声明简介函数声明 12345678#include <algorithm>template< class RandomIt(随机迭代器...
Good Morning vocation
Good morning, beautiful vocation Good bye, beautiful vocation Good Morning,beautiful回想放假前各种寒假计划,铺天盖地,雄心壮志,气势昂昂,回个家猛如放虎归山,似乎对未来充满了无限的期望 既要学这,又要学那,既要折腾这,又要探索那,看来起来很充实的样子。 然而,哈哈…… 回到家里面的第一个星期到是热情不减,热血沸腾,随手拿起一本《c++ primer plus》就是看,几乎是把吃饭的时间都用上了,每天起来的第一件事就是打开书,边看书边吃早餐,吃完午餐第一件事又是看书,洗完澡又是看书,好像身体早已变成了AC永动机。因此得到的成果也是不少,看了一百二百页的样子 同时第一个星期干的事情还真不少,完成项目计划的部署,虽然此计划早在12月时就可以行动了,但是最终还是以失败告终。还有就是马马虎虎得翻译了一些官方wiki,说是一些,其实很少量,到不知道有没有400字。 第一个星期的疯狂,可能是由于期末那段时间没有学过课外的知识,都在放松自己,准备考试,还有一个折腾。折腾啥呢,折腾装linux,期末前几乎拿时间去都...
日常水题
p1008三连击、UVa340猜数字游戏的提示、Uva1583生成元,POJ-2271(模拟),fzcoj1787(模拟) p1008三连击将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2:3的比例,试求出所有满足条件的三个三位数。 一个个遍历过去,判断三个数字的每个位的数字是否重复,这里用的办法是先提取出每个位的数字,然后排序,将其与数组下标对齐,如果不数组的值与下标的值不相等,则出现重复。 这里可以用于构造几个数字,然后判断出现的数字是否重复。 1234567891011121314151617181920212223242526#include<iostream>#include<algorithm>using namespace std;int i, j, a[15];bool ans;int main(){ for (i = 123; i <= 329; i++) { a[1] = i % 10; a[2] = i % 100 / 10; ...
c++string
string小结 开始 string类由头文件string支持 (头文件string.h和cstring支持对c-风格字符串进行操纵的c库字符串函数,但不支持string类) string类将string::nops定义为字符串最大长度,通常为unsigned int最大值 string与wstring: string是针对char而预先定义的特化版本,wstring是针对wchat_t而预先定义的特化版本 使用wstring可以让你使用宽字符集,例如Unicode或某些亚洲字符集‘ 所有字符串类型都采用相同接口,所以两者用法都一样。 C++字符串并不以’/0’结尾 注意对象名不会被看做是对象地址,比如string s(20, ‘x’); s不是指针,s+6没有意义,而&s[6]却是指针。 字符串各种操作函数 Name Feature swap() 交换两个字符串的内容 =, assign() 赋以新值 +=, append(), push_back() 在尾部添加字符 insert() 插入字符 erase() 删除字符...
emacs官方文档阅读笔记
基本命令行 翻页浏览命令C-v 向前移动一屏M-v 向后移动一屏C-l 重绘屏幕,并将光标所在行置于屏幕的中央 光标移动命令C-f 向右移动一个字符C-b 向左移动一个字符 M-f 向右移动一个词【对中文是移动到下一个标点符号】M-b 向左移动一个词【对中文是移动到上一个标点符号】 C-n 移动到下一行C-p 移动到上一行 C-a 移动到行首C-e 移动到行尾 M-a 移动到句首M-e 移动到句尾 M->文章末尾 M-<文章首段 文本编辑命令< DEL > 删除光标前的一个字符【这里的DEL指键盘上的Backspace键】C-d 删除光标后的一个字符 M-< DEL > 移除光标前的一个词M-d 移除光标后的一个词 C-k 移除从光标到“行尾”间的字符【移除其实相当于其他编辑器里的剪切】M-k 移除从光标到“句尾”间的字符 C-y 在光标所在处插入最后移除的文字【这个召回命令其实相当于其他编辑器...
c++小总结2
虚函数与继承,转换函数 虚函数与继承12345678class shape{ public: virtual void draw() const = 0; //pure virtual,一定要定义 virtual void error(const std::string& msg); //impure virtual,希望重新定义,而且已有默认定义 int objectID() const; //non-virtual,不希望重新定义} 转换函数情况11234567891011121314151617class Fraction{ public: Fraction(int num, int den = 1) : m_numerator(num), m_denominator(den) { } //(1) operator double() const //转换函数 { return (double)(m_numerator / m_denomina...
c++小总结
构造函数不能共存例子、构造函数放在private、const在函数前与后、相同class的各个objects互为友元、设计一个类注意事项、操作符重载、new与delete、static、继承,复合,委托 1. 构造函数不能共存例子1234567(1)complex (double r = 0, double i = 0) : re(r), im(i){ }(2)complex() : re(0), im(0) { } 当使用complex c1;或complex c2();时,两种创建办法都没有参数,编译器可以调用(1),对于(2),虽然函数有参数,但是有默认值,也可以调用,所以会冲突,不能共存。 2. 构造函数放在private一般我们不把构造函数放在private里面,因为这样不能被外界调用。其实也有特殊情况,下面列举一种,Meyers Singleton设计模式 123456789101112131415161718class A{public: static A& getInstance(); setup()...
过年是不可能过年的
如今新年越来月没有年味了,对于我来说,给电脑换个壁纸等于过年 </div> 壁纸,当然得骚红,毕竟 男人可以不帅,但是不能不骚 今年春晚有4k源,但是在youtube上面嗨,估计也是给外国佬当做催眠剂把,毕竟 春晚一分钟,稳睡一晚上 无聊来谢谢随笔,其实也不算随笔,就是在xjb写 其实吧,是为了测试下悠闲谈板块而已 放假后用hexo和github搭建了个博客,这可能是好事,也可能是坏处,毕竟有很多东西都有两面性 然后,就没有然后了,现在是除夕下午,衣着简陋,无心过年,唯有农药 (说,农药给了你多少钱)