面试考点

本文介绍了编程中常用的数据结构如数组、链表、树等,并详细探讨了各种算法,包括查找、排序等基本算法。同时,文章还强调了代码规范性、完整性和可维护性的重要性,并对比了几种常见的错误处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据结构:数组,字符串,链表,树(尤其是二叉树),栈,队列。

算法:

(1)查找:顺序查找,二分查找,二叉搜索树。。

(2)排序:插入排序,冒泡排序,选择排序,快速排序,归并排序,堆排序。

代码的规范性:清晰的书写;清晰的布局;合理的命名规则(最好用完整的英文单词来命名变量名和函数名)。

代码的完整性:基本功能;边界值输入是否得到正确的输出;非法输入的错误处理。

可扩展性和可维护性:考虑需求的变化。

错误处理的方式:

(1)判断返回值进行错误处理,windows很多API是这种方式,这种方式最大的问题是使用不便,因为函数不能直接把计算结果通过返回值赋值给其他变量,同时也不能把这个函数计算的结果直接作为参数传递给其他函数。

(2)第二种方式是在出错的地方设置一个全局变量,Windows 的很多API 运行出错之后,也会设置-个全局变量。我们可以通过调用函数GetLastError 分析这个表示错误的全局变量,从而得知出错的原因。但这个方法有个问题:调用者很容易就会忘记去检查全局变量,因此在调用出错的时候忘记做相应的错误处理,从而留下安全隐患。

(3)异常。当函数运行出错的时候,我们就抛出一个异常,我们还可以根据不同的出错原因定义不同的异常类型。因此函数的调用者根据异常的类型就能知道出错的原因,从而做相应的处理。另外,我们能显式划分程序正常运行的代码块(try模块)和处理异常的代码块(catch 模块),逻辑比较清晰。另外,当抛出异常的时候,程序的执行会打乱正常的顺序,对程序的性能有很大的影响。不明白?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值