android 数组可以存储哪些类型 数组可以存储字符吗_数组


数组是什么?链表是什么?它们的区别是什么?

数组:是有序的元素序列,不要上来就说是一些数/自然数/实数的有序组合/集合,写过代码的同学都知道,数组里面不仅可以放数字,也可以放字符、字符串、对象等,这里直接说元素就可以了。

如果这时候老师问数组里面只能存相同类型的元素吗?

答:数组的定义是有限个类型相同的变量集合命名,但是在实际编程过程中,不同的程序语言对于数组存储是有差异的,比如C,C++, java 元素类型就是一样的,而一些脚本语言,比如python 数组元素就可以不同。

注:此时老师明显想让你否定这个结论,所以我们先回答定义,然后谈编程时的情况,这样会让老师觉得你的动手能力是可以的,而且对于概念的理解比较到位。

链表:一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。老师可能会简单的问单链表、双向链表以及循环链表的定义,此处只要简单描述一下就可以。

区别:自行百度,网上很多详细的讲解。此处需要注意的是,可以和老师说明两者查找、删除时的时间复杂度。如果对某种语言比较熟悉,比如java,可以讲解一下java中ArrayList, LinkedList, Vector等的底层实现。总之面试的时间是固定的,尽量在简单的、你擅长的地方多说一点,这样既可以多磨点时间,也能体现出你的技术深度。正如找工作面试的时候,你如果不多说点项目内容,那剩下的时间就是写算法题,通常有一道题没出来,基本就跪了,想想吧,是不是这个理。