剑指offer
ABC我的博客
主要是自己平时回顾起来方便
工作忙没时间更新了,望理解
展开
-
剑指offer-3-输入一个链表,按链表值从尾到头的顺序返回一个ArrayList
网上有些是用栈来解题的,有些是直接使用everse翻转vector的,有些用两个vector,其中一个正序存链表的数据,再将这个vector反向赋值给另一个vector。我是用纯链表来做的。但是这个要注意:该题的head指针是包含了元素值的,之前看的博客教程和数据结构的书,头指针是不包含数据的。代码如下:/*** struct ListNode {* int val;* ...原创 2019-03-07 09:10:58 · 176 阅读 · 0 评论 -
2020届云从科技HR面
云从HR面(16min):(1)首先1-2分钟自我介绍(2)你是通过什么途径了解我们公司(除了说途径,也要说了解)(3)你怎么看待云从公司的发展(人脸识别是发展前景好)(4)你在华为实习是做什么的(LLT测试)(5)优缺点,如何克服(善于交友、不善言谈,上台锻炼)(6)你经历过的最大的困难(项目催得紧,压力大)(7)兴趣爱好(跑步,篮球,旅游)(8)A等奖学金比例(5:4:1,排名...原创 2019-09-17 15:00:13 · 1045 阅读 · 3 评论 -
2020届腾讯面试和招银网络面试分享
(1)腾讯电话面一面-互娱腾讯:30min1.项目中搭建流媒体服务器的过程,rtsp的底层的什么协议,为什么选这个协议,哪个字节到哪个字节是什么?视频流的时延,码流,分辨率?想过怎么优化吗?2.TCP和UDP的区别3.多线程项目中怎么用的,线程同步的方法,互斥锁和事件区别4.C++用的那个版本,C++11的新特性?智能指针之前就有了啊,Lambda怎么用(不了解的别说)5.cs结构和...原创 2019-09-16 16:43:05 · 7263 阅读 · 0 评论 -
华为笔试-翻转数字求和
题目描述反转数字求和。输入“123,456”,反转后求和:321+654=975,输出975。/*输入两个正整数a,b求ab翻转后的和如果a,b超出了[1,70000]则输出-1*/#include <iostream>#include <vector>#include <string>using namespace std;int ma...原创 2019-09-04 21:41:51 · 701 阅读 · 0 评论 -
华为笔试-括号匹配
题目描述:/*括号匹配给定一个字符串,里边可能包含“()”、“[]”、“{}”三种括号,请编写程序检查该字符串中的括号是否成对出现,且嵌套关系正确。输出:true:若括号成对出现且嵌套关系正确,或该字符串中无括号字符;false:若未正确使用括号字符。实现时,无需考虑非法输入。输入描述:输入为:字符串例子:(1+2)/(0.5+1)输出描述:输出为:字符串例子:true...原创 2019-09-04 21:39:58 · 1010 阅读 · 0 评论 -
2020届华为实习笔试面试经验分享——已收到offer
岗位:通用软件开发岗(C++)前言:本科就对华为比较仰慕,一心就进入华为,实习无疑是一个比较好的途径。就算不能去实习,也可以提前体验下笔试面试的过程,为校招做好准备。希望顺利签约,9月份能转正吧。准备:(1)最开始投了腾讯的实习提前批,问的非常的底层,基础,好多问题都回答不上来,因此我准备华为的时候就比较重视基础和底层(华为的面试较腾讯还是要简单些)。(2)实际我还准备的比较早,2月份过...原创 2019-05-12 23:10:54 · 22448 阅读 · 22 评论 -
剑指offer-4-重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。【解题思路】(1)前序遍历序列中的首元素为根节点(2)中序遍历序列中根节点元素之前的为左子树,之后的为右子树(3)对左子树和右子树进行递归直到前序...原创 2019-04-15 20:13:01 · 122 阅读 · 0 评论 -
2019年4月3日华为实习生笔试第2题-合法去重移位排序输出
题量很大,但是不是很难,这里需要注意四个输出:(1)合法字符串去重输出(不是字符串中的字符去重,而是字符串去重)(2)非法字符串直接输出(3)合法字符串移位再输出(4)在(3)的基础上排序输出输入实例:(按Ctrl+Z结束输入)abcdef==acd12344234tjgaga'-=ad--sabd123abcdef123456789012345678901234...原创 2019-04-11 17:05:38 · 353 阅读 · 0 评论 -
2019年4月5日腾讯实习生笔试第1题-凑面值
/*题目描述:小Q现在手上有n种不同面值得硬币,每种面值得硬币都有无限多个。为了方便购物,小Q希望带尽量多的硬币,并且要能组合出1到m之间(包括1和m)的所有面值输入描述:第一行包含两个整数m,n,接下来的n行,每行一个整数第i+1行的整数表示第i种硬币的面值。输出描述:输出一个整数,表示最少需要携带的硬币数量。如无解,则输出-1测试20 4125105*///牛...原创 2019-04-11 16:29:49 · 402 阅读 · 0 评论 -
华为笔试题-明明的随机数
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能正确处理)。Input Param...原创 2019-04-02 11:19:42 · 468 阅读 · 0 评论 -
华为笔试题-进制转换
写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 )输入描述:输入一个十六进制的数值字符串。输出描述:输出该数值的十进制字符串。输入例子1:0xA输出例子1:10//最开始写的#include<iostream>#include <math.h>#include <string>#include &l...原创 2019-04-02 11:18:14 · 347 阅读 · 0 评论 -
华为笔试题-汽水瓶
题目:有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?输入...原创 2019-04-02 11:15:20 · 993 阅读 · 3 评论 -
2019年4月3日华为实习生笔试第1题-交替输出字符串
笔试的时候我只调出来20%,后面找到原因了,也是一些小问题,要气死了第二题也没有先做出来,还是该先做出来第一题再做第二题的#include <iostream>#include <vector>#include <string>#include <list>using namespace std;/*32,5,6,7,9,5,7...原创 2019-04-03 21:38:36 · 1290 阅读 · 8 评论 -
剑指offer-1-二维数组中查找
最简单的办法就是挨着遍历,但是这样的时间复杂度要搞很多,特别是数组维度比较大时。思路:每次选取右上角或者左下角的数字,以a=[1 2 8 92 4 9 124 7 10 136 8 11 15]为例,从9开始,如果9&gt;target,那么第四列整列都比target大,可以删掉,col-1;如果9&lt;target,那么第一行整行都比t...原创 2019-03-07 15:52:15 · 158 阅读 · 0 评论 -
2020届vivo秋招笔试第2题-排队报数取数
/*将N (N<10000) 个人排成排,从第1个人开始报数;如果报数是M的倍数就出列,报到队尾后则回到队头继续报,直到所有人都出列;输入描述:输入2个正整数,空格分隔,第一个代表人数N,第二个代表M:(例子:6 3)输出描述:输出一个int数组,每个数据表示原来在队列中的位置用空格隔开,表示出列顺序3 6 4 2 5 1*/#include <iostream>...原创 2019-09-22 17:49:51 · 722 阅读 · 0 评论