基本面试题(无序版)

本文涵盖了基础的计算机科学概念,包括堆和栈的特性、常见数据结构如链表和队列、排序与查找算法的时间复杂度。讨论了TCP与UDP在网络传输中的差异,以及文件IO与标准IO的区别。此外,还涉及了进程与线程、数据库操作如sqlite3的使用,以及shell和Makefile脚本的基础知识。最后,提到了多进程和多线程编程以及结构体对齐和进程间通信的初步概念。
摘要由CSDN通过智能技术生成

1、堆和栈的区别

访问速度、生长方向(堆向内存增加方向)、申请释放、空间大小

2、常见的数据结构有哪些

线性表的顺序表、链表、栈、队列、数。

3、常见的查找和排序的算法有哪些,具体实现、时间复杂度和空间复杂度

排序:冒泡排序、快速排序、简单插入排序

查找:二分法查找

具体实现待写。

4、TCP和UDP的区别

TCP:一对一连接,可靠性传输。

待补充

5、文件IO 和标准IO的区别

文件IO 是系统调用,有操作系统,标准IO是库函数的一个函数。

是否有缓存 、函数不一致。

待补充

6、链表的插入和删除

单链表和双链表。单链表的反转。

7、进程和线程的区别

进程是资源分配的最小单位,线程是运行的最小单位。

优缺点比较,进程中的一个线程崩了,进程也会崩掉。而进程之间不会相互影响。线程通信方便,公用一块内存,但是也有自己的空间保存数据等信息。

8、sqlite3数据库的基本操作

对表的创建和删除。

对数据进行增删改查。

9、shell脚本

用途、基本语法。

10、Makefile脚本

用途和基本语法

11、如何实现多进程编程和多线程编程

高并发

待补充

12、结构体对齐

原理是字节对齐,方便计算机访问数据。联合体公用同一块内存,以占最大字节数数据类型为准。

待确认。

13、进程间的通信

socket套接字,如何使用。待补充

14、回调函数

函数指针的用法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值