很多时候我们都叫数据结构和算法
1.什么是数据结构?
数据结构(Data Stricture)是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合
当未来我们实现一些项目的时候,我们需要在内存中将数据存储起来,比如
- 数组
- 链表
- 树
- 哈希表
- ......
每一种存储的方式都有特点
2.什么是算法?
算法(Algorithm)就是定义良好的计算过程,取一个或一组的值为输入,并产生出一个或一组值作为输出。简单来说就是一系列的计算步骤,用来将输入数据转化成输出结果
- 排序
- 查找
- 去重
- ......
3.数据结构和算法的重要性
在校园招聘的笔试中:
当前校园招聘笔试一般采取online judge形式,一般都是20-30道选择题,3-4道编程题
在校园招聘的面试中:
某公司面试题:
- 怎么计算一个类到底实例化了多少对象?
- 如果还有一个派生类继承了这个类,那么如何计算这两个类,各自实例化了多少对象?
- 你了解联合体和结构体吗?
- 如何测试一个机器是大端还是小端?
- 你了解队列和栈吗?
- 怎么用两个栈实现一个队列?
- 你使用过模板吗?
- 写一个比较两个数大小的模板函数?
- 你使用过容器吗?
- 判断两个链表是否相交
- Vector和数组的区别
- 你在学校里做的最满意的一个项目是什么?简述一下这个项目
4.如何学好数据结构和算法
- 死磕代码
- 注意画图和思考
5.总结
这一节我们主要是让大家对数据结构有一个简单的认识,后面我们会慢慢的深入学习