IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> 6.一维数组与二维数组 -> 正文阅读

[数据结构与算法]6.一维数组与二维数组

数组的概念:
?? ?用于存储 操纵数据的集合

数组的特点:
?? ?1.数组类型可以是任意类型(基本和引用数据类型)
??? ?2.数组一旦创建 就必须指定类型?
?? ?那么该数组只能存指定类型的元素
??? ?3.数组一旦创建 其长度就已经确定 不可以改变

数组的声明:
?? ?数组类型[] ?数组名;//符合java书写习惯
??? ?数组类型 ? ?数组名[];//符合c书写习惯

*数组的创建:

?? ?*1.创建数组的同时初始化数组
??? ??? ?数组类型[] 数组名={数组元素1,...,数组元素n};
??? ?*2.通过new关键字创建数组 同时指定数组长度
??? ??? ?数组类型[] 数组名=new 数组类型[长度];

? ? ? ? 数组名[下标]=value;//动态数组赋值
??? ?3.通过new关键字创建数组 同时初始化数组
??? ?数组类型[] 数组名=
?? ?new 数组类型[]{数组元素1,...,数组元素n};

*数组的访问:

?? ??? ?数组都是靠下标完成操作:
?? ??? ?最小下标:0
??? ??? ?最大下标: 长度-1(length())
?
??? ??? ?访问数组中单个元素:
??? ??? ??? ??? ?数组名[下标]
??? ??? ?*遍历数组:
??? ??? ??? ?通过循环将数组下标全部找到?
?? ??? ??? ?根据下标获取数组中元素
?
??? ??? ?每个数组都要Length属性?
?? ??? ?获取数组元素长度 即元素的个数

默认值:

?? ??? ?整数都是 0 ?? ?long 0L
??? ??? ?浮点都是 0.0 ??? ?float 0.0f
??? ??? ?char:\u0000 空白
??? ??? ?boolean: false
??? ??? ?所有引用数据的默认值:null
?? ??? ?

*冒泡排序:
?? ?冒泡排序的原理:
??? ??? ?每一组相邻的两个元素依次进行比较
??? ??? ?如果第一个元素大于第二个元素 那么交换位置
??? ??? ?直到没有相邻元素需要比较
?? ?
//冒泡排序
for(int j=0;j<arr.length-1;j++){//比较趟数
? ? for (int i = 0; i < arr.length-j-1; i++) {//每趟比较的次数
?? ?//相邻两个元素进行比较
?? ?if(arr[i]>arr[i+1]){
?? ??? ?//交换位置
?? ??? ?int c=arr[i];
?? ??? ?arr[i]=arr[i+1];
?? ??? ?arr[i+1]=c;
?? ?}
? ? ?}
}

*最大值和最小值:
?? ?int[] arr={90,34,23,18,120};
?? ??? ?//假设第一个元素是最大值
?? ??? ?int max=arr[0];
?? ??? ?//遍历数组
?? ??? ?for (int i = 0; i < arr.length; i++) {
?? ??? ??? ?//数组元素挨个和假设最大值比较
?? ??? ??? ?if(max<arr[i]){
?? ??? ??? ??? ?max=arr[i];
?? ??? ??? ?}
?? ??? ?}
?? ??? ?System.out.println(max);

二维数组:
?? ?二维数组通过数组一个特点:
?? ??? ?数组类型可以是任意类型 数组类型本身也是数组

? ? ? ? 二维数组也是由多个一维数组构成

????int[][] ar=new int[3][4]//三代表有三个一维数组,4代表每个一维数组中有4个元素

?? ?创建:

?? ??? ?int[][] arr={{10,20},{30},{40}};
?? ?int[][] arr=new int[二维数组长度][数组元素的长度];

?? ?//创建二维数组
?? ?int[][] arr={{10,20,30},{40,50},{60,70}};
?? ?//遍历二维数组
?? ?for (int i = 0; i < arr.length; i++) {//将二维数组拆分为一维数组获取数量
?? ??? ?for (int j = 0; j < arr[i].length; j++) {//将已分解的一维数组进行遍历,通过length获取单个一维数组中的元素
?? ??? ??? ?System.out.println(arr[i][j]);
?? ??? ?}
?? ?}
?

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-10-12 23:43:35  更:2021-10-12 23:45:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:23:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码