代码的八个数据结构(面试问题和带回答链接(()(如下:代码的八个数据结构((((((()
编程面试主要由数据结构问题、算法问题和几个逻辑问题构成。例如,不使用临时变量交换两个整数的方法。
这些问题结束后,应该有充分的信心参加电话和面对面的面试。
这些面试提问并不能保证被问到编程、数据结构和算法方面的问题,但会给予他们足够的知识来理解实际编程工作面试中可能会遇到的问题。
顺便说一下,如果你不完全了解基本的数据结构和算法,或者还没有接触,那么尝试这些问题也没有意义。
代码面试需要知道8个数据结构。(带面试问答链接)。
译者注:要完成面试,不要急于刷题,首先要明白什么是数据结构!
为了确保可读性,本文采用意译代替直译。另外,本论文的版权归原作者所有,翻译只用于学习。
1976年,瑞士计算机科学家写了本书《Algorithms+DataStructures=Programs》。也就是说,算法=程序的数据结构。即使过了40多年,这个等式也成立。
从访问模式系统来看,的数组连续存储在内存中,因此可以通过下标索引进行访问。链表是一种链式存储结构,访问元素时只能从前到后进行线性访问,因此访问效率低于数组。
1)选择参照要素。通常是第一个元素或最后一个元素。
3)此时,如果参考要素排列整齐,则使位置正确。
对于分割规则算法来说,如果算法能够一次分割成两个相等的长列,则分割规则算法的效率最高。换句话说,标准的选择非常重要。选择标准方案决定了两次分割后两个子序列的长度,对整个算法的效率有决定性的影响。理想情况下,选定的基准可以将要排序的序列划分为长度相同的两个子序列。