网易有道 嵌入式面经
8.15晚上 网易有道一面 凉
1、先讲讲你做的项目
2、共享资源如何避免多个线程抢占,有什么方法(线程运行状态)
3、线程锁
4、如何在中断里面等待数据准备完成
5、Linux相关知识
6、数据库(本人不会就没深入)
7、修改一段代码(指针相关)例如在函数中申请的指针如何拿到主函数中使用 本人复习没过关,没做出来
8、手撕--数猴王
附上代码
#include <iostream> using namespace std; struct node{ int data; node *next; }; node *head,*end1; void mk_creat(int n) { //int index=1; node *temp1,*temp2; temp1 = new node; temp1->data = 1; temp1->next = NULL; head = temp1; temp2 = temp1; for(int i=2;i<=n;i++) { temp1 = new node; temp1->data = i; temp2->next = temp1; temp2 = temp1; temp1->next = NULL; } end1 = temp2; end1->next = head; } void select_monkey(int key_value) { int x=0; node *temp1,*temp2; temp2 = end1; while(temp2!=temp2->next) { temp1 = temp2->next; x++; if(x%key_value==0) { //cout << temp1->data << " " ; temp2->next = temp1->next; delete temp1; temp1 = NULL; } else { temp2 = temp1; } } head = temp2; } int main(){ mk_creat(30); cout<<"ok"<<endl; select_monkey(7); cout << head->data; delete head; return 0; }