`

面试请说说链表和数组

 
阅读更多

面试请说说链表和数组

 

 

                        链表                                           数组

 

长度               不固定                                          固定

内存连续         不要求                                         连续内存

内存使用         不浪费                                         可能浪费内存

追加节点         容易                                            尾部又空的话容易

插入节点         容易                                            难--移动后面的节点

删除               容易                                             难--移动后面的节点

随机访问        不支持的                                     下标随机访问

分享到:
评论

相关推荐

    程序员面试攻略 part1(共2个)

    3.9 面试例题:空链表与循环链表48 第4章树和图53 4.1 树53 4.1.1 二元树54 4.1.2 二元搜索树55 4.1.3 堆57 4.1.4 常用的搜索方法58 4.1.5 遍历58 4.2 图59 4.3 面试例题:左遍历59 4.4 面试例题:左遍历...

    程序员面试攻略part 2(共2个)

    3.9 面试例题:空链表与循环链表48 第4章树和图53 4.1 树53 4.1.1 二元树54 4.1.2 二元搜索树55 4.1.3 堆57 4.1.4 常用的搜索方法58 4.1.5 遍历58 4.2 图59 4.3 面试例题:左遍历59 4.4 面试例题:左遍历...

    iOS开发高级程序员面试题-答案.pdf,这是一份不错的文件

    知识点:数组和链表是两种不同的数据结构,数组元素在内存中连续存放,而链表元素在内存中不是顺序存储的。 3. 发送同步请求,程序将停止用户交互,直至服务器返回数据完成,才可以进行下一步操作。而发送异步请求...

    高薪程序员面试题精讲系列49之说说ConcurrentHashMap#put方法的源码及数。。。.pdf,这是一份不错的文件

    其底层结构主要包括三个部分:链表数组、哈希桶和节点。本文主要关注put方法的实现,因此我们将对ConcurrentHashMap的数据添加流程进行详细分析。 二、put方法的实现 put方法是ConcurrentHashMap中添加数据的核心...

    C 语言数据结构题集

    链表不同于数组,它的元素在内存中不是连续存储的,而是通过指针连接。链表分为单链表、双链表和循环链表等类型。在单链表中,每个节点包含数据和指向下一个节点的指针;双链表则额外有一个指针指向前一个节点;循环...

    IT java 面试题库

    - `LinkedList`: 双向链表,适用于频繁插入和删除的场景。 - `HashSet`: 基于哈希表实现的Set接口,不允许重复元素。 - `HashMap`: 基于哈希表实现的Map接口,存储键值对。 - `TreeSet`: 实现了SortedSet接口,...

    Java面试八股文十万字总结.docx

    ### Java面试核心知识点详解 #### 一、Java基础篇 **1. Java语言的特点** - **面向对象**:Java是一种完全面向对象的语言,支持封装、继承、多态。 - **平台无关性**:通过JVM实现了跨平台的能力,编写一次,到处...

    值得收藏的2017年Java开发岗位面试题

    数组和链表的操作效率取决于具体情况,数组查找速度快但插入删除慢,链表查找速度慢但插入删除快。 9. Java内存泄露的问题调查定位:jmap,jstack的使用等等。 Java内存泄露可以使用jmap和jstack工具来调查定位,...

    Java后端技术面试汇总-2019

    - **说说线程安全问题**:在多线程环境下,确保数据的一致性和正确性。 - **重入锁的概念**:支持同一个线程多次获得同一把锁。 - **产生死锁的四个条件**:互斥条件、请求与保持条件、不剥夺条件、循环等待条件。...

    java 面试题 总结

    ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector...

    超级有影响力霸气的Java面试题大全文档

     ArrayList 和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,...

    java面试题,180多页,绝对良心制作,欢迎点评,涵盖各种知识点,排版优美,阅读舒心

    【数据结构】数组与链表的优缺点 139 【算法】什么是hash? 140 【算法】排序 141 【算法】冒泡排序 141 【算法】快速排序 142 【算法】归并排序的过程?时间复杂度?空间复杂度? 143 【算法】什么是一致性哈希?...

    java offer收割指南

    ArrayList 是基于数组实现的,LinkedList 是基于链表实现的。ArrayList 的随机访问速度快,但插入和删除元素速度慢。LinkedList 的随机访问速度慢,但插入和删除元素速度快。 类实例化顺序 5. 讲讲类的实例化顺序...

    嵌入式软件工程师笔试题

    4. C51单片机的串口异步通信和同步通信的区别,说说他们的优缺点。 这个问题考察了应聘者的嵌入式系统知识,特别是单片机的通信方式。 5. C51单片机的数据总线和地址总线是如何复用的,说明原理。 这个问题考察了...

    java面试宝典

    ### Java面试宝典知识点梳理 #### 一、基础概念与语法 **1. ".java"文件是否必须以.java为扩展名?** - **答案:** 不一定非得使用.java作为扩展名,但这是约定俗成的做法,易于识别并被开发工具支持。 - **解释:*...

Global site tag (gtag.js) - Google Analytics