
实习经历+面试
文章平均质量分 57
面试题
answer_yym
且随疾风前行
展开
-
华为笔试题
S 长度\u003C=100,L 长度\u003C=500,000。(例如,S=”ace”是 L=”abcde”的一个子序列且有效字符是 a、c、e,S 长度\u003C=100,L 长度\u003C=500,000。给定一个正整数n,如果能够分解为m(m > 1)个连续正整数之和,且k = { n - [m * (m -1) / 2] } / m。S 中的每个字符在 L 中都能找到(可以不连续),输出,21=10+11,是最短的分解序列。先输入 S,再输入 L,每个字符串占一行。输入输出示例仅供调试。原创 2024-07-08 16:20:52 · 577 阅读 · 0 评论 -
面试经典 150 题
思路二:发现规律:先把整个数组逆置,之后把前k个元素逆置,之后把后边n- k个元素逆置。给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。输入: nums = [1,2,3,4,5,6,7], k = 3。思路一:使用辅助数组,时间复杂度O(N),空间复杂度O(N)向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]输出: [5,6,7,1,2,3,4]原创 2024-07-05 19:48:30 · 590 阅读 · 0 评论 -
柠檬微趣笔试题
匹配应该覆盖到整个输入的字符串(而不是局部的),测试用例中不会出现超出匹配字符范围之外的字符,也不会出现非法的模式字符串。输入的第一行为需要检测匹配的用例数,接下来的每一行包括两个字符串,前一个字符串为待匹配的字符串,后一个字符串为模式字符串,实现简单的正则表达式匹配,本题中模式字符串所包含的字符的范围为字母、“.”、“*”、“?“*” 与模式字符串前一个字符组成一组,匹配零个或多个前面的字符;” 与模式字符串前一个字符组成一组,匹配一个或多个前面的字符;原创 2024-06-20 08:20:11 · 1150 阅读 · 0 评论 -
24面试记录002
Python 的协程基于事件循环(Event Loop)的机制,事件循环负责调度并发任务的执行,而协程则通过 async/await 实现了在任务间的挂起和恢复。为了高效管理对象的资源,c++增加一种语言特性,把一个对象B变成右值引用类型,结合移动构造函数和移动赋值运算符,把对象B的资源(内存、文件句柄等)转移到另外一个对象A。总的来说,Python 的协程通过生成器和 async/await 关键字实现了在单线程内的并发执行,利用事件循环来调度任务的执行,从而实现了高效的异步操作和并发编程。原创 2024-06-18 10:52:14 · 668 阅读 · 0 评论 -
protobuf使用笔记
message各字段的使用方式:optional类型repeated类型使用:原创 2022-12-04 10:28:29 · 395 阅读 · 0 评论 -
git常见命令需求
0,基本命令git add . # 从工作区添加到暂存区git commit -m "信息" # 从暂存区移动到本地库git push origin master # 更新到远程库git clone xxxx1. 删除本地库mastertemp在master分支上执行:git branch -d temp # 如果未合并,就使用-D2. 使用远程库更新本地库在当前分支master下git fetch origin master:tempgit diff tempg原创 2022-04-13 11:01:56 · 327 阅读 · 0 评论 -
Typora工具使用_下载
一个链接记录链接原创 2021-12-02 20:45:39 · 178 阅读 · 0 评论 -
算法面试题_参考别人
文章目录1、京东风控2、京东风控二面1、京东风控Q2:遗传算法优化和梯度下降优化有什么区别Q3:如何评估预测模型的好坏,如何评估优化算法的好坏Q4:了解GBDT、XGB等的理论知识吗,GBDT的梯度是什么梯度,参数都是什么?Q5:SQL去重操作编程题:1、查找数组第K大元素2、编程题:二分查找2、京东风控二面Q1:XGB是如何处理二分类的?Q2:逻辑回归是一个线性模型吗?Q3:逻辑回归线性模型指的是什么?Q4:DeepFM模型的具体原理是什么样的,FM部分和Deep部分都说一下Q原创 2021-11-27 21:15:47 · 1002 阅读 · 0 评论 -
小甲鱼拆文件
1、描述把一个对话文件按说话人拆分2、关键字文件3、思路4、notes6、code# 实现把./record.txt这个文件按照===分割成不同的对话,#把双方各自说的话,写入各自的文件,并写入不同的文件def save(boy, girl, count): # 把分割之后的 一段对话 保存到两个文件 file_name_boy = 'boy_' + str(count) + '.txt' file_name_girl = 'girl_' + str(count) +原创 2021-11-08 13:05:39 · 102 阅读 · 0 评论 -
笔试题东方国
c++基础面试1、构造析构顺序。#include<iostream>#include<vector>using namespace std;class A {public: A() { cout << "A is created" << endl; Print(); } ~A() { cout << "A is deleted" << endl; } virtual void Print() {原创 2021-10-18 17:04:59 · 129 阅读 · 0 评论 -
实现memcpy函数
1、描述实现函数memcpy(void *dst, const void * src, size_t n){}4、notes1、dst和src都得是有效指针,这个函数才有意义。2、assert 后面的语句为真,才往后执行,如果为假,就直接终止程序,6、code瑕疵版本:可能会内存重叠,void* memcpy(void * dst, const void * src,size_t n){ //assert((dst != nullptr) && ( src != nu原创 2021-09-19 17:46:58 · 277 阅读 · 0 评论 -
使用一个辅助栈完成对给出栈完成排序。
2、思路假设初始栈的最终排序结果:从栈顶到栈底依次递增。解题思路:初始栈的最终排序结果:从栈顶到栈底依次递增,那么辅助栈的最终排序结果:从栈顶到栈底依次递减。也就是如果 辅助栈为空 或 初始栈的栈顶元素 > 辅助栈的栈顶元素,从初始栈弹出栈顶元素到辅助栈。如果 初始栈的栈顶元素 < 辅助栈的栈顶元素,保存初始栈的栈顶元素并弹出,这个时候需要将辅助栈里边大于保存元素的数全部压入初始栈,直到辅助栈为空或辅助栈的栈顶元素小于保存元素,此时再将保存元素压入辅助栈。如此循环,直到初始栈为空,原创 2021-09-02 15:36:36 · 161 阅读 · 0 评论 -
手撕:多线程顺序打印123,ABC循环打印10次
1、描述题目:编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。2、解析:看到这题最开始的思路是想到了应该使用锁和条件变量的知识(貌似也只有对于lock类型的多线程编程大都使用这两种/(ㄒoㄒ)/~~),这题的关键点在于同步的问题,在这里我使用了一个flag全局变量,用来和条件变量控制同步,而在C++11中条件变量有两种方法notify_one和notify_all,多线程的话(3个及原创 2021-09-02 11:09:42 · 1464 阅读 · 0 评论 -
手写快排,堆排,归并排序
文章目录1、快排1.1、递归1、快排递归非递归,1.1、递归快排主要是两部分,哨兵划分,和递归一:确定哨兵,(默认哨兵是arr[l],一趟把比哨兵小的放左边,把比哨兵大的放右边,当i和j相遇的时候,把哨兵放到正确的位置上。二:之后进行下一轮的递归。#include<iostream>#include<algorithm>#include<vector>using namespace std;void qsort(vector<int>&原创 2021-08-12 15:24:17 · 247 阅读 · 0 评论 -
笔试算法题 +输入输出练习+智力题
1、一个获取字符串获取一个变长数组: vector<int> nums; int num; do { cin >> num; nums.push_back(num); } while (getchar() != '\n');从键盘输入一行字符串:string ver1;while (getline(cin, ver1));#include<iostream>#include<algorithm>#include<stri原创 2021-08-11 10:49:35 · 430 阅读 · 0 评论 -
LRU算法实现
1、描述实现一个lru缓存机制算法。查询复杂度O(1),删除添加复杂度也是O(1)题目描述2、关键字lru3、思路使用一个hash表,把当前的键,和键+值,搞成一个哈希映射表,然后通过链表的方式把历史数据存起来。使用头插法,维护最近使用的元素在链表头。4、notes把链表,双向链表的定义分离,代码结构清晰。5、复杂度时间O(1)空间O(1)6、code struct Node{ // 直接双向链表 int key; int val;原创 2021-08-04 14:08:37 · 220 阅读 · 0 评论 -
数据库面试题
0、数据库基础0.1、说下数据库索引索引是帮助mysql高效获取数据的数据结构。可以理解为:排好序的快速查找的数据结构索引会影响到where后面的查找,和order by后面的排序。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据。这样就可以在这些数据结构上实现高级查找算法,这种数据结构,就是索引update更新慢,数据在改,索引也在改。索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存在于磁盘中、df -h 查看磁盘空间原创 2021-06-05 11:49:28 · 197 阅读 · 1 评论 -
复盘和star
1、复盘的4个步骤1、回顾目标目标是什么,里程碑有哪些?要在10%毛利底线下拿下目标,里程碑,3月底前拿下项目,6月测试上线,9月收回全款2、评估结果结果是什么?在2月底前拿下项目,但测算毛利只有5%因此,好的差异:我们推动客户提前做出了决定,坏的差异:毛利低于预期,、不要分析原因,不要提出解决方案3、分析原因4、总结规律2、star原则当面试官问到让你介绍做过啥?印象深刻的项目时候?最有成就感的一件事?sitation,背景task,团队任务,目标,个人角色,(如何分工,对内原创 2021-05-09 15:29:09 · 898 阅读 · 0 评论 -
go语言学习005——iris框架学习
1、安装go get -u github.com/kataras/iris然后在gopath目录下,新建first_iris文件夹新建文件main.gopackage mainimport ( "github.com/kataras/iris/v12" "github.com/kataras/iris/v12/middleware/logger" "github.com/kataras/iris/v12/middleware/recover")func main() { app原创 2021-04-21 23:57:30 · 563 阅读 · 0 评论 -
go004关于rpc学习
客户端:服务器:客户端存根:封装请求,压缩,解压,发送请求打包解包,序列化反序列化的一段程序。地址,端口信息。工具代码服务器存根:原创 2021-04-15 22:22:00 · 143 阅读 · 0 评论 -
go语言进阶003
1、time包下的通道哈哈奤原创 2021-04-15 11:23:10 · 144 阅读 · 0 评论 -
go语言学习进阶002
1、包gopath路径自动找到src/目录下import导包:import(. math // 意思省略包名p math // 起别名_ math // 意思是不使用包内的函数,只调用包内的init初始化函数。)init函数,初始化一些数据,没有形参,也没有返回值,在main函数之前执行,和main函数都是go语言自动调用,init函数可以多次定义,在一个文件中从上到下顺序执行把文件排序,然后执行init函数不同的包,按照import的顺序执行。包如果有依赖,就深度优先的初始原创 2021-04-13 19:51:28 · 181 阅读 · 0 评论 -
go语言学习001
1、安装1、go run xxx.go命令源文件(一个main包,里面一个main函数),还有库源文件,go程序都是以包来管理的,go build,管理的包,只能有一个main命令源文件,其他都是库文件,go install ,把编译好的可执行程序mv到bin目录下,把其他编译好的库文件.a文件,mv到pkg目录下,2、基础语法1、iota从0开始,每增加一个const常量,这个iota就自加1,2、go语言中只有一个i++,没有–i,3、变量就是一块内存地址,名字,4、核心特性,基于编译原创 2021-04-11 22:35:08 · 347 阅读 · 0 评论 -
纯虚函数虚函数001
1、纯虚函数,为了编程规范,继承此类的子类都要实现这个纯虚函数,**定义:**纯虚函数是在基类中声明的虚函数,它在基类中没有定义,但要求任何派生类都要定义自己的实现方法。在基类中实现纯虚函数的方法是在函数原型后加“=0”virtual void funtion1()=0编译器要求在派生类中必须予以重写纯虚函数以实现多态性抽象类,它不能生成对象, 称带有纯虚函数的类为抽象类。纯虚函数必须在继承类中重新声明函数(不要后面的=0,否则该派生类也不能实例化),而且它们在抽象类中往往没有定义定义纯虚函数原创 2020-12-28 14:05:08 · 197 阅读 · 0 评论 -
面试001+自己经历的
001基础一个小点但是很重要的就是不要太过于依赖于IDE,现在IDE功能强大,极大地提高了软件工程师的生产力,但是鬼知道面试的时候你用的哪个平台,而且大部分面试平台的Intellisense垃圾的不行,所以平时刷题的时候还是用纯编辑器写比较好,常用的函数名和参数都要记住。1、字节1、test001基础问题:1、海量IP,给出IP,求出IP出现的次数?字典树、哈希、位图trie,又称前缀树或字典樹,是一种有序树,用于保存关联数组,其中的键通常是字符串。 与二叉查找树不同,键不是直接保存在节点中,而原创 2020-12-28 21:35:45 · 1414 阅读 · 0 评论 -
二叉树的非递归深度优先
二叉树的初始化问题,深度优先,就是中序遍历,递归的话就是先左子树,再右子树,如果是非递归就借助栈数据结构,根节点入栈弹出,再右子树先入栈,左子树在入栈#include<iostream>#include<vector>#include<string>#include<queue>#include<stack>using namespace std;struct TreeNode { int val; TreeNode *lef原创 2021-03-08 18:02:45 · 177 阅读 · 0 评论 -
别人面试的题,借鉴
1、设计模式1.1创建型模式:工厂方法原创 2021-03-09 11:00:21 · 415 阅读 · 0 评论 -
阿里面试题+项目
//评测题目: 无集群有什么评测指标?老师对同学有什么要求指标?功耗,散热,节点挂了能感知吗?有什么管控策略消除节点隐患?会等待吗?挂了会怎么样?怎么解决?探活,怎么探活?增加一个树莓派?网络连不上,怎么搞定的?brpc的架构组成?面向对象常见的设计模式?一些原则?简单工厂模式(接口)工厂方法模式(接口)单例设计模式(多线程)怎么提高吞吐量?大部分程序员都是工作在应用层,针对应用级别代码能提高吞吐量的建议:加大应用的进程数,增加并发数,特别在进程数是瓶颈的情况下优化线程调用,尽原创 2021-03-09 07:58:19 · 352 阅读 · 1 评论 -
didi001
、实习10.20周2入职上午入职培训,下午领电脑,熟悉下苹果操作系统10.21一大早过来安装vs,最后发现苹果不必安装vs,直接公司分配开发机,然后只需要看一下代码,用VScode看一下就好了,把苹果操作系统升级了10.15,安装了iterm2一个类似Xshell的shell软件,安装了类似linux系统的apt-get命令一样的软件商城homebrew,可以使用brew命令来安装需要的东西,拆卸也是很方便只需要在访达里把该软件拖到废纸篓再清一下废纸篓就好了。所有下载的东西都在访达这里的下载目录原创 2020-10-27 16:43:56 · 1105 阅读 · 0 评论