1.算法题
来源:【网易】https://www.nowcoder.com/discuss/773647?source_id=discuss_experience_nctrack&channel=-1
- 1.
- 2.LeetCode 爬楼梯
- 3.leetcode 1181
- 4.leetcode325
- 5.给你一串D和I组成的字符串,长度为n-1;一组数组,数组由1-n组成,每个数字只出现一次;如果S[i]==D,则arr[i]和arr[i+1]递减,I反之。https://www.nowcoder.com/discuss/706268?source_id=discuss_experience_nctrack&channel=-1
C++相关
- 多态
- 虚函数,虚函数实现原理,虚函数表
- 四种智能指针,shared_ptr,weak_ptr区别,底层原理。
- c++的4种类型转换
- C++11新标准
- STL的底层实现
- 缓存区的实现,自动紧凑和增长
- select 、poll 和 epoll 的区别?
- c++进程通信方式
- 大端小端,内存对齐,C++内存管理
- 虚函数的指针会放到这个对象内存中的什么位置?
- 100*100的二维数组的行优先遍历和列优先遍历除读取顺序外还有哪些区别?二维数组行优先遍历和列优先遍历哪个好,为什么?
- C++中左值和右值有什么区别?
- 继承有什么缺点
- 深拷贝浅拷贝区别
- 内存泄露
- 二级指针
- 函数指针
- struct和class的区别
- new和malloc的区别
- VS中的PDB是什么, 解决方案和项目的关系, 动态库和静态库的区别, dll的main函数在哪里, 能否编写一个加法dll并供用户使用
- C++单例
- C++的内存结构,利用这个内存结构实现一个安全的单例模式
- 函数重载,重载的规则
- 哪些函数不能是虚的
- 怎么动态分配内存? new,在内存上的哪个区? 堆,怎么删除?
- 引用,右值引用的意义
数据结构与算法
- AC自动机
- kdtree
- 红黑树(map)
- 哈希表解决冲突
- 桶排序及各种排序
- TopK问题
- navmesh寻路
操作系统与网络
- TCP和UDP的区别?游戏中需要实时且准确的通信如语音等是如何在UDP的快捷的基础上保证TCP的可靠的?
- 进程调度算法
- 进程通信?接触过哪些锁?
- 进程间通信方式, 线程间通信方式, 什么是协程, 死锁以及为什么发生死锁
- 什么是虚拟内存, 内核态和用户态是什么, 怎么理解这两个状态, 显存和内存的区别
- 线程和进程
- 内存调度,页,虚拟地址和物理地址的转换
- 堆栈区别
设计模式
- 1.单例模式有几种写法,安全的要怎么写
- 2.怎么让单例模式的静态类延迟加载
C#
- navigation原理
- C#的Dictionary
- C#语言都了解哪些,说了语言特性、 CLR等等;
- C#堆栈区别,垃圾回收机制,三代回收算法等;
- 解释一下C#的委托、事件以及关系;
- 说一下C#的动态数组;
- winform与asp.net mvc分别说一下,更倾向哪一种(这个可能自由发挥了);
- 数据库查询优化问题(感觉像是问sql优化,直接没涉及,基本写linq一笔带过了);
- 观察者模式(因为项目中有用到才会问的吧)
- 单例模式,说了懒汉式,饿汉式,改进的饿汉式等以及优缺点;
- Winform控件事件分哪几种;
- C# 中ref out区别;