数据结构与算法
数据结构与算法
数据结构与算法
数据结构:数据在内存中如何存储
目的:数据查询快
数据结构类型:数组,链表,栈,队列,字符串,树,图
java强数据类型语言 例如 int a=10; float=10.0;

数组的特性:
1.数据的地址是连续的
2.一个数组当中只能去存储相同类型的数据
3.数组可以通过下标获取数据,数组的下标是从0开始的
4.数组的定义必须提前定义好大小,定义好不能改变
等号前面指的是引用 等号后面是值
时间复杂度
快速判读时间复杂度
1.确定问题的规模 n
2.循环减半logn
3.k层关于n的规模 n^k
4.复杂情况 根据算法执行过程判断
算法的特性
1.算法的执行时间和算法的执行次数正相关
2.算法的执行次数和时间的规模正相关

输出结果是“第一”
内存情况


内存情况

引用类型:句柄=值的地址(堆中地址)
把等号右侧值的地址交给等号左侧的句柄
值的地址:堆中地址
引用地址:栈中地址

上面的name因为是 堆中的同一个name
下面的y1 y2是两个
对堆中数据进行修改才能对其造成影响


等号左边是句柄 右边是值
基本类型句柄和值在一个地方 句柄和值都放栈里
引用类型 句柄和值不在一个地方 句柄放栈里 值放堆里
因为基本类型所占的空间是固定的 引用类型所占的空间不是固定的
String类型不是基本类型 所以放到堆里 当string内容改变时 地址也会改变 原来地址对应的内容将会被删除
引用类型里面的 基本类型 在原地方 string在堆里申请地址



浙公网安备 33010602011771号