首页 > 其他 > 详细

搜狗面试

时间:2018-10-19 20:36:04      阅读:126      评论:0      收藏:0      [点我收藏+]

1.java实现链表反转

2.c++

假设 Linux 中有两个数组 pid 和 ppid,他们等长,并且相同的位置,分别表示进程号和其对应的父进程号。现在想要 kill 某一个进程,请设计程序,打印输出需要 kill 掉的所有进程号。


pid   9,  0, 10,  67,  23,  45, 100
ppid  0,  0,  0,  23,  10,  10,  45

kill 10 

 1 void Kill(vector<int> pid,vector<int> ppid,int num){
 2 
 3 int len=pid.size();
 4 queue<int> que(110,-1);
 5 vector<int> ans(len*2+1,-1);
 6 vector<int> sto(110,-1);
 7 for(int i=0;i<len;i++){
 8 sto[pid[i]]=ppid[i];
 9 }
10 for(int i=0;i<110;i++){
11 if(sto[i]==num){
12 que.push(i);
13 ans.push_back(i);
14 }
15 }
16 while(!que.empty()){
17 int temp=que.front();
18 que.pop();
19 for(int i=0;i<110;i++){
20 if(sto[i]==temp){
21 que.push(i);
22 ans.push_back(i);
23 }
24 }
25 }
26 return ans;
27 
28 }

 

 

搜狗面试

原文:https://www.cnblogs.com/yuanninesuns/p/9818589.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!