FindWork
Benson-nhw
即将步入社会的研究生。
展开
-
Tcp的运输连接管理
一.基础小知识 1.TCP的特点 (1)TCP是面向连接的运输层协议:这也就是说,应用程序在使用TCP协议之前,必须先建立TCP连接。在传送数据完毕后,必须释放已经建立的TCP连接。 (2)每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的。 (3)TCP提供可交付的服务:通过TCP连接传送的数据,无差错,不丢失,不重复,并且按序到达。...原创 2019-08-13 10:17:04 · 140 阅读 · 0 评论 -
《算法:LeetCode刷题》二分查找
二分查找(递归)/**功能:实现用递归实现的二分查找。 *时间:2019.7.31 *作者:Beson_NHW */ //利用二分查找的前提条件是:序列是已经排好顺序的,假设下面代码中的sort_array是升序排列的。 #include<iostream>#include<vector>using namespace std;class Solut...原创 2019-07-31 10:47:28 · 222 阅读 · 0 评论 -
剑指offer---两个不同的“在数组中查找重复元素”的编程题
一.已知一个数组的长度为n,数组中的元素都在0~n-1范围之内,在数组中某些数字是重复的,请你找出任意一个重复的数字。二.代码实现思路(以n=4来说明,并假设数组中的数据为:1 3 2 3)步骤1:检查数组中数字是否在0~n-1这个范围之内;步骤2:对数组中数据进行逐个判断,数组中0号位置上的数为1,并且发现1号位置上的数字为3,那么就将进行交换。交换后的数组为3 1 2 ...原创 2019-07-26 11:08:49 · 278 阅读 · 0 评论 -
网易---小易的字典
1.须知:在计算机中,两个字符串比较大小,是按照从左到右的顺序进行比较的,如果第一位相等,就比较第二位,直至有一位可以比较出大小出来,就不再进行比较。2.题目描述:小易字典内的每个单词都包含n个'a'和m个'z', 并且所有单词按照字典序排列。小易现在希望你能帮他找出第k个单词是什么?3.寻找规律:当n=2,m=2,k=6时;n=3,m=2,k=6时;n=3,m=3,k=6;aazz...原创 2019-07-22 12:47:17 · 269 阅读 · 0 评论 -
《STL源码剖析》---day2
《第二章 空间配置器》一般而言,我们所习惯的C++内存配置操作和释放操作内存配置 class Foo { }; Foo* pf=new Foo; 内存销毁 delete pf; new 算式内包含两阶段操作调用::operator new 配置内存 调用Foo::Foo()构造对象内容 delete算式也包含两阶段操作调用::~Foo()将对...原创 2019-07-22 09:07:55 · 65 阅读 · 0 评论 -
C++面试常问问问题积累---《对比篇》
一.数组和vector的区别1.vector可以用size()函数来获取vector的长度,即vector中元素的个数;而数组是不可以的,因为数组中的元素个数在定义数组的时候已经确定了长度。2.vector的长度不固定,可以随时增加。数组的长度固定,在定义数组的时候就确定了,不可以改变。3.vector可以利用push_back()在vector末尾增加元素。数组则不行,数组中元素在定...原创 2019-07-25 19:31:07 · 91 阅读 · 0 评论 -
C++面试常问问题积累---《关键字篇》
一.extern关键字的作用是什么? extern关键字置于变量或者函数前,用于表示变量或者函数定义在别的文件里,提示编译器遇到此变量或者函数时,到别的模块中寻找变量和函数的定义。它的作用主要有两个: 1.当它与“C”一起连用的时候,eg,extern "C" void fun(int a,int b), 则是在告诉编译器这个函数需要按照C的规矩去翻译,而不是C++的规矩去...原创 2019-07-25 15:13:23 · 655 阅读 · 0 评论 -
牛客网错题积累
一.C++STL实现1.vector 底层数据结构为数组,支持快速随机访问。 2.list 底层数据结构为双向链表,支持快速增删。 3.deque 底层数据结构为一个中央控制器和多个缓冲区,支持首尾快速增删,也支持随机访问。 4.stack 底层数据结构一般用2 3实现,封闭头部即可,不用vector的原因应该是容量大小有限制,扩容耗时。 ...原创 2019-07-30 16:55:49 · 123 阅读 · 0 评论 -
网易---数对
一.问题描述: 一个正整数数对(x, y),x,y满足条件:x和y均不大于n, 并且x除以y的余数大于等于k。输入n,k,请问满足条件的正整数数对有多少个?二.注意事项: 输入包括两个正整数n,k(1 <= n <= 10^5, 0 <= k <= n - 1),从n的范围可以看出如果用两个for循环暴力解决问题,会超过题目要求的时间复杂度。...原创 2019-07-21 14:58:42 · 189 阅读 · 0 评论 -
剑指offer---二叉树的下一个节点
一.题目描述:给定一棵二叉树和其中的一个节点,如何找出中序遍历序列的下一个节点?树中的节点了有两个分别指向左右子节点的指针,还有一个指向父节点的指针。二.解题思路:根据所给节点分类1.如果这个节点有右子树,那么它的下一个节点就是它的右子树中最左子节点。2.如果这个节点没有右子树并且它还是它父节点的左子节点,那么它的下一个节点就是它的父节点。3.如果一个节点既没有右子树,并且它还...原创 2019-07-30 14:20:01 · 117 阅读 · 0 评论 -
插入位置
一.题目描述 给定一个排序数组nums(无重复元素)与目标值target,如果target在nums里出现,则返回target所在下标,如果target在nums里面没有出现,则返回target应该插入位置的数组下标,使得target插入数组nums之后,数组任然有序。二.解题思路 只是在二分查找的基础上添加了几个判断条件,以有序序列“1 3 5 6”为例来说明:...原创 2019-07-31 14:42:57 · 626 阅读 · 0 评论 -
《算法:LeetCode刷题》区间查找
一.题目描述给定一个排序数组nums(nums中有重复元素)与目标值target,如果target在nums里现,则返回target所在区间的左右端点下标,[左端点,右端点],如果target在nums里没有出现,则返回[-1,1]。二.输入输出样例nums=[5,7,7,8,8,8,8,10], target=8, 那么返回[3,6];如果target=6,那么返回[-1,1]....原创 2019-07-31 16:52:59 · 668 阅读 · 0 评论 -
面试项目应答一----从实验室项目中的收获
技术层面收获一:让我学会了如何寻找出问题的源头 1. 红外扫描测温系统主要由红外扫描仪以及PC端监测软件组成,所以PC端显示的数据与实际值不一致时,问题可能来源就有两个,可能是PC端对红外扫描仪传输来的数据没有进行正确的处理,这时就要跟踪PC端监测软件对数据处理的每一个环节,看那个环节出现的问题,具体说来就是利用qDebug()<<data来观察data是否为我们需要...原创 2019-07-23 10:43:08 · 969 阅读 · 0 评论 -
浦发银行提前批面试经验
一.求职岗位浦发银行信息科技岗(系统开发方向),本人学校是重邮,所以面试地点选择在成都。二.面试流程:机试+面试工作人员会根据到现场的人数来确定是先安排你先进行机试还是面试,我是先进行的机试后进行的面试。三.机试题目1.输入一个整数,取出这个整数中的偶数位上的数字组成一个新数并输出,例如输入123456,输出2462.输入一个只包含字母的字符串,将字符串中的大写字母改为小写...原创 2019-08-21 17:21:47 · 956 阅读 · 2 评论 -
浦发银行提前批面试准备工作1
《项目介绍》1.一句话简述项目2.详细列出项目实现的功能3.说出项目实现的技术和架构,能说出项目的不同寻常之处,比如采用了某项新技术。4.能让人感觉出项目的规模。 红外扫描测温系统首先是通过传感器将水泥回转窑表面的温度采集并传输到DSP处理器进行处理后,经过传输模块传输到PC端监测软件在线实时的将回转窑表面温度呈现出来,为回转窑安全作业提供保障。该系统已在全国多家水泥厂得到应...原创 2019-08-15 11:23:45 · 184 阅读 · 0 评论 -
中兴提前批面试总结
中兴提前批面试总结1.关于简历的问题:简历上写了“单例模式”以及"工厂模式"但是自己不太清楚,这一点需要从简历上删除掉。第一点教训,简历上的东西一定要是自己熟悉的东西,熟悉到相关的可以拓展开的内容能够脱口而出。2.关于流程的问题:在面试前一天可以百度一下往届学生的面试经验,例如今天面试中兴就应该在收到面试通知后,就可以提前百度搜索一下中兴的面试流程大致是什么样的。然后面试当天应该提前到场,...原创 2019-08-09 21:12:40 · 936 阅读 · 0 评论 -
C++中如何定义一个模板
//如果两个值相等,返回0,如果v1小返回-1,如果v2小返回1int compare(const string &v1,const string &v2){ if(v1<v2) return -1; if(v2<v1) return 1; return 0;}int compare(const double &v1,c...原创 2019-08-07 17:14:20 · 643 阅读 · 0 评论 -
“两个指针变量可以进行的运算”
在牛客网上刷到了一道选择题:两个指针变量不可以(A) 提供了四个选项:A.相加 B.比较 C.相减 D.指向同一地址。牛客网给出的答案A。分析以及知识点回顾指针变量保存的是地址,而地址本质上是一个整数,所以指针变量可以进行部分运算,例如加法、减法、比较等。#include<stdio.h>int main(){ int a=0; double b=9...原创 2019-08-06 09:28:50 · 7695 阅读 · 0 评论 -
偶得一题---输入一个数n,求n所有的约数。
一.题目描述: 输入一个整数n, 约定n大于等于1,小于等于十的九次方,请统计n的所有约数。二.解题思路:解题思路一:遍历1~n之间所有的数,判断是否能被n整除,若能被整除,则是n的约数。实现代码:#include<iostream>#include<vector>#include<algorithm>using namesp...原创 2019-07-27 17:14:33 · 3813 阅读 · 0 评论 -
贪心算法练习---1
一.理论基础(可能出现在校招笔试题中的选择题中)贪心算法是指在对问题求解时,总是做出当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。贪心算法 动态规划 贪心算法的每一次操作都会对结果产生影响 不是每一次操作都会对结果产生影响 贪心算法对每一个子问题的解决方案都做出选择,不能回退 有回退功能 贪心选择是指所求问...原创 2019-08-05 15:05:04 · 157 阅读 · 0 评论 -
《算法:leetCode刷题》动态规划
一.动态规划需要弄清楚的四个方面1.确认原问题与子问题 2.确认状态3.确认边界状态的值4.确定状态转移方程。二.由易入难,做几道动态规划的题目1.爬楼梯问题,每次能爬1级台阶或者2级台阶,问爬n级台阶有多少种爬法?解题思路:可以采用回溯法也可以采用更高效的动态规划法回溯法实现代码:#include<iostream>using namespace st...原创 2019-08-01 10:22:56 · 210 阅读 · 0 评论 -
《STL源码剖析》---day3
一.写在前面的话:《STL源码剖析》视频资料可以在B站上搜索得到,视频教学老师就是《STL源码剖析》这本书的作者。二.C++标准库>STL(标准模板库),STL六大组件:容器,算法,迭代器,仿函数,配置器,配接器。三.贴一个能够体现六大组件之间关系的代码#include<iostream>#include<vector>#include<a...原创 2019-07-23 11:26:57 · 247 阅读 · 0 评论 -
寻找两个链表的交点
一.题目描述已知链表A的头节点指针headA, 链表B的头节点指针headB,两链表相交,求两链表交点对应的节点。二.题目要求1.如果两个链表没有交点,则返回NULL2.在求交点的过程中,不可以破坏链表的结构或者修改链表的数据域3.可以确保传入的链表A和链表B没有任何环4.实现算法尽可能使时间复杂度为O(n), 空间复杂度为O(1)三. 方案一:使用set求交集...原创 2019-07-20 14:58:21 · 597 阅读 · 0 评论 -
计算机网络---那些不认识的单词缩写
一.认清现实,奋力直追FTP 文件传输协议:File Transfer Protocol 应用层 TCP 传输控制协议:Transmission Control Protocol 传输层 UDP 用户数据报协议:User Datagram Protocol 传输层 HTTP 超文本传输协议:HyperText Transfer Protoc...原创 2019-07-24 17:27:53 · 235 阅读 · 0 评论 -
网易---被3整除
一.问题描述:小Q得到一个神奇的数列: 1, 12, 123,...12345678910,1234567891011...。并且小Q对于能否被3整除这个性质很感兴趣。小Q现在希望你能帮他计算一下从数列的第l个到第r个(包含端点)有多少个数可以被3整除。二.解题思路:序号---数字---能否被整除1---1---不能2---12---能3---123---能4---1234...原创 2019-07-14 12:42:52 · 118 阅读 · 0 评论 -
剑指offer---连续子数组的最大和
一.问题描述: 给一个数组,返回它的最大连续子序列的和。例如:数组为{6,-3,-2,7,-15,1,2,2} 那么连续子向量的最大和为8(从第0个开始,到第三个为止,6+(-3)+(-2)+7=8)。二.解题思路:遍历数组中的每一个元素,判断当前元素与(上一个状态加上当前元素)之间的大小关系来决定是否要加上当前元素,然后判断和与当前状态之间的大小关系来更新和。遍历完所有元素后,返...原创 2019-07-10 09:31:01 · 88 阅读 · 0 评论 -
两个有序链表的合并
一.问题描叙:有两个链表L1,L2,都是有序的,先要求将这个链表合并,合并后的链表依然要求是有序的。二.问题解释:如下图。链表L1:链表L2:合并后的链表:三.方法图解步骤1:比较L1和L2指向的节点,将较小的节点放在临时头节点后面比较并添加后临时头节点temp_head, L1,L2的变化步骤2:循环上面的步骤,直到将某一个链...原创 2019-07-09 18:43:25 · 452 阅读 · 0 评论 -
剑指offer---跳台阶以及变态跳台阶
《跳台阶》问题一.题目表述:一只青蛙一次可以跳一级台阶也可以跳两级台阶,问这只青蛙跳n级台阶共有多少种方法(先后次序不同算不同的跳法)。二.解题思维:递归的思想来解决这个题目,递归包含两个要素,一个是递归的终止条件(递归出口),一个是递归表达式(规律)。具体来说,在这个题目中递归的终止条件为:当number等于1时,返回1。当number等于2时,返回2(可以分别两次跳一级,也可以一次跳两...原创 2019-07-12 16:59:47 · 107 阅读 · 0 评论 -
网易---牛牛的背包问题
一.问题描述:牛牛有n袋体积不同的零食,以及一个容量为w的背包,问在不超过背包容量的情况下,牛牛总共有多少种不同的方法?二.问题分析:在考虑每个零食的时候,这个零食有两种可能,放入背包或是不放入背包,采用递归的思想来解决这个问题。三.带注释的代码:#include<iostream>#include<vector>#include<algorithm...原创 2019-07-09 09:24:14 · 171 阅读 · 0 评论 -
C++实现单链表反转
一.写在前面的话:找工作必须是全方位重点突击,准备工作可以从两方面着手,第一是公司的笔试环节,应该注重刷题。第二是公司的面试环节,对自己写在简历上的东西一定要熟悉,主要以项目中所涉及到的C++编程技术为主。二.今日份编程练习《C++实现单链表的反转》实现思路:1.如果单链表为空或者只有一个元素,那么就直接返回。2.设置两个前后相邻的指针p,q,将p指针所指向的节点作为q所指...原创 2019-06-08 22:17:58 · 8420 阅读 · 1 评论 -
牛客网---删除重复字符
一.题目:牛牛有一个由小写字母组成的字符串s,在s中可能有一些字母重复出现。比如在"banana"中,字母'a'和字母'n'分别出现了三次和两次。但是牛牛不喜欢重复。对于同一个字母,他只想保留第一次出现并删除掉后面出现的字母。请帮助牛牛完成对s的操作。二.解题思路:从字符串中取出一个元素,将这个元素和之前已被取出的元素进行比较,如果从已取出的元素中找到了该元素,那么这个元素将不能被输...原创 2019-06-07 13:41:05 · 367 阅读 · 0 评论 -
找工作经验分享2
《VIVO提前批笔试题分享》一.写在前面的话 提前批的三道题给人的感觉都是常见的编程题,但自己动手实现起来感觉是如此的困难。自我反省一下是,这段时间自己动手编程实在太少,再加上自己的基础知识实在不够扎实,才导致看到这些笔试题既熟悉又陌生。在次立一个flag 从2019.6.4开始努力刷题,手写代码。Fighting, Fighting,Fighting! 一份好的工作值得你付出应有的努...原创 2019-06-04 22:41:32 · 181 阅读 · 0 评论 -
找工作经验分享1
一. 关于各个公司的测评题1.题型一般包括文字理解题、图表题、图形规律题。2.做题时间较紧,一般为一道题一分钟左右。3.在一分钟时间内如果没有作答,会自动跳到下一题,所以做题的第一步是要随便选择一个选项,避免在做题时没有注意时间,自动进入到了下一题。4.如果想练习相关题目,可以参考每年的公务员考试的题目。二.关于简历1.写在简历上的一定是自己已经有过全面了解的,比如简...原创 2019-06-02 08:02:03 · 653 阅读 · 0 评论 -
剑指offer---整数中出现1的次数
一.问题描述: 给出一个非负整数n, 求出从1到n中1出现的次数。二.解题思路:逐个判断1-n范围内的每一个数,判断每个数中包含的1的个数,然后求和便可得到1出现的次数。三.带注释的代码:#include<iostream>using namespace std;class Solution { public: int NumberOf1Between1...原创 2019-07-10 20:07:02 · 72 阅读 · 0 评论 -
剑指offer---把数组排成最小的数
一.题目描述:输入一个正整数数组,把数组中所有的数字拼接起来排成一个数,打印能拼接出所有数字中最小的一个。二.解题思路:对数组中的数据进行排序,按照将a和b转为string后,若a+b<b+a a排在前的规则排序。三.带注释的代码:#include<iostream>#include<vector>#include<algorithm>...原创 2019-07-10 22:25:16 · 67 阅读 · 0 评论 -
动态规划第一题---硬币找零问题
一. 问题描述:假设有几种硬币,如1,3,5并且数量无限,请找出能够组成某个数目的找零,要求所使用的硬币数要最少, 返回需要最少的硬币数目。二.解题思路:类似这种求极值的问题,首先可以想到的是这个问题是动态规划问题。解决动态规划问题有如下几个步骤: 1. 明确子问题;2.状态表示;3.状态转移方程;4.确定边界;三.具体思路: 具体说来,硬...原创 2019-07-16 08:58:33 · 1801 阅读 · 0 评论 -
计算机网络---数据链路层
计算机网络---数据链路层一.在数据链路层扩展以太网 扩展以太网更常用的方法是在数据链路层进行。最初人们使用的是网桥。网桥对收到的帧根据其MAC帧的目的地址进行转发和过滤。二.网桥被淘汰,交换式集线器(以太网交换机)诞生。三.以太网交换机 以太网交换机实质上就是一个多接口的网桥,通常都有十几个或更多的接口,和工作在物理层的转发器,集线器有很大的差别。以太网交换机...原创 2019-07-24 16:36:36 · 190 阅读 · 0 评论 -
利用C语言结构体解决“各个国家体育竞赛获奖排名”问题
一.题目描述: 输入一个正整数N代表国家个数,紧接着输入国家名称,该国家获得金牌数目,获得银牌数目,获得铜牌数目。然后根据输入输出国家获奖排名,排名规则是首先按金牌排名,如果金牌相同则比较银牌,如果银牌也相同,则比较铜牌数目,否则按照输入顺序输出排名。二.输入输出样例:输入: ...原创 2019-07-29 15:20:08 · 2077 阅读 · 0 评论 -
指针和引用的区别初探
一.引用1.1 什么是引用:引用即别名,为对象起了另外一个名字,在定义引用的时候一定要进行初始化。1.2 绑定:一般初始化变量时,初始值会被拷贝到新建的对象中。然而定义引用时,程序把引用和它的初始值绑定在一起,而不是将初始值拷贝给引用。关于引用的注意事项:注意事项1 引用在定义的时候就要进行初始化 注意事项2 不能定义引用的引用(int& (&a):...原创 2019-07-19 17:09:36 · 129 阅读 · 0 评论 -
计算机网络---物理层
一.物理层的主要任务 物理层的主要任务被描述为确定与传输媒体的接口有关的一些特性。机械特性 指明接口所用接线器的形状和尺寸,引脚数目和排列等 电气特性 指明在接口电缆的各条线上出现的电压的范围 功能特性 指明某条线上出现的某一电平电压的意义 过程特性 指明对于不同功能的各种可能事件的出现顺序 二.双绞线的类别类别 带宽 线缆特点...原创 2019-07-24 11:04:08 · 128 阅读 · 0 评论