美文网首页
堆栈数组类型讲解

堆栈数组类型讲解

作者: 幼姿沫 | 来源:发表于2021-03-08 11:21 被阅读0次

① 数据类型的分类   

1.可变类型    list  dict                 会在原来的内存地址上修改元素    拷贝之后改变的元素不会牵扯             改变原来的元素,deepcopy深拷贝会将深层次的内容均复制过来

       2.  不可变类型  int str tuple  long  不会在原来的内存地址上修改元素,而是指向了新的内存引用    

             浅拷贝可以将原来的不可变数据类型拷贝过去,复制体的改变会影响牵扯原来的数据

② 堆和栈的区别

1.申请方式不同   栈是系统自动分配的 堆是人为申请开辟的

2.申请大小的不同   栈的内存空间小  堆的内存空间大

3.申请效率的不同   栈的申请速度快  堆的申请速度慢

4.底层不同     栈是连续的空间  堆是不连续的空间 是一棵完全二叉树

5.存储内存的不同     栈在函数调用的时候,第一个进栈的是该函数的下一个指令的地址,然后是函数的各个参数,参数是由右向左入栈的之后是函数的局部变量,静态变量是不会入栈的,他会存储在静态存储区。

当本次函数调用结束后,局部变量先出栈,之后是参数最后栈顶指针指向最开始存储的地址,也就是主函数中的下一条指令,程序由该点继续运行。

堆一般是堆的头部用一个字节存放堆的大小,堆内的具体内容由程序员自己安排。

③  堆   栈   队列的区别

1.堆   人为申请开辟的 空间大 速度慢  不连续的完全二叉树  

堆是在程序运行的时候,申请某个大小的内存空间  即动态分配内存   

对其访问和对一般内存的访问没有区别。

  2.栈  stack    其实就是一个桶 是系统自动分配的内存空间  先放进去的后拿出来

后放进去的先拿出来      后进先出    存放顺序*参数  局部变量   静态资源在静态内存空间  拿取顺序 *局部变量   参数       栈是在栈顶做插入和删除操作

3.队列  queue    先进先出  只能在队头删除 队尾添加

④   数组array  链表   队列queue 堆栈stack的区别

1.数组 和链表都是内存的概念  数组是在连续的空间中存储数据   链表是在不连续的内      存空间中存储数据。

2.队列和栈都是存取的概念   队列是在队尾添加  队头删除       先进先出    

                                             堆栈是在队尾添加队尾删除       后进先出      

                                             队列和堆栈可以用链表实现也可用数组实现

相关文章

  • 堆栈数组类型讲解

    ①数据类型的分类 1.可变类型 list dict 会在原来的内存地址上修改元素 拷贝之后改变...

  • javase part7 - 数组内存分配

    基本类型数组只声明不new 引用类型数组堆栈分配 多维数组栈分配

  • Java数组---栈内存与堆内存的区别(通过数组讲解)

    Java数组 在进入讲解主题“-栈内存与堆内存的区别”之前,先来讲解一下数组,所谓数组,就是若干个相同数据类型的元...

  • 堆栈(C语言)

    堆栈(顺序存储)数组方式 一个有界数组存储两个堆栈 堆栈(链式存储) 中缀表达式如何转换为后缀表达式从头到尾读取中...

  • Java数据结构

    目录1数组2链表3栈和队列4二叉树5堆和堆栈6散列表7红黑树 1. 数组 数组是一种连续存储线性结构,元素类型相同...

  • 简单数据类型和复杂数据类型

    1 - 简单数据类型和复杂数据类型 1.1 简单数据类型 1.2 复杂数据类型 1.3 堆栈 堆栈空间分配区别: ...

  • python数据类型 - 列表list

    列表定义 创建数组列表来存放数据,无需声明列表类型,==数据自0编号==,自下至上放在内存中(堆栈) 列表是有序的...

  • js堆栈理解、实现浅拷贝与深拷贝

    1.何为堆栈? 堆(heap)用于引用数据类型(数组,对象,函数)分配空间,由程序员分配释放,从栈内存指向堆内存的...

  • 数组内存堆栈

    数组 用于存储一组同一数据类型数据的容器 数组会对放入其中的数据自动编号,编号是从0开始的---下标 定义格式 数...

  • 关于堆栈的讲解

    先mark,有时间补。http://stackoverflow.com/questions/1113819/arr...

网友评论

      本文标题:堆栈数组类型讲解

      本文链接:https://www.haomeiwen.com/subject/amqpqltx.html