小白日记之一维数组

数组是一个存储数据的工具,可以用来帮我们存储东西。

数组需要声明并创建,之所以需要创建,我认为应该是需要系统在内存中分配空间,毕竟数组是一个存储数据的工具,需要空间。数组会在内存中开辟一个连续的空间。

public static void main(String[] args) {

int[] arr = new int[5];

for(int i=0;i<5;i++) {

arr[i] = i+1;

System.out.println("第"+(i+1)+"个元素的值为"+arr[i]);

}

}

增强型for循环,适合配合数组使用的for循环。在括号中只有两个两个表达式,跟普通的for表达式不同的是中间用冒号隔开,普通的for循环使用分号。第一个表达式跟普通的for循环不一样的地方是定义一个变量,并且不给他初始化。第二个表达式干脆是数组的名字。

public static void main(String[] args) {

int[] arr = new int[5];

Scanner sc = new Scanner(System.in);

for(int x=0;x<arr.length;x++) {

System.out.println("请输入数组的元素");

arr[x] = sc.nextInt();

}

System.out.println("数组的元素内容为");

for(int n:arr) { //此为增强型for循环。

System.out.print(n+" ");

}

int sum = 0;

for(int z=0;z<arr.length;z++) {

sum = arr[z] + sum;

}

System.out.println("");

System.out.println("数组的和为"+sum);

}

冒泡排序,总的来讲就是通过比大小的方式把来把元素进行有序排列。本身不难,难的是写出空间复杂度和时间复杂杜都比较好的冒泡排序。

int[] a = {34,53,12,32,56,17};

System.out.println("排序前的数组元素为");

for(int x:a) {

System.out.print(x+" ");

}

System.out.println();

int temp;

for(int i=0;i<a.length-1;i++) {//外重循环控制循环的次数

for(int j=0;j<a.length-1-i;j++) {

if(a[j]>a[j+1]) {

temp = a[j];

a[j] = a[j+1];

a[j+1] = temp;

}

}

}

for(int y:a) {

System.out.print(y+ " ");

}

}

冒泡排序,两两排序,外重循环最多执行5次,内重循环比外重循环次数小。并且每次循环都比之前的循环次数更少。

相关推荐
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于Java的学校住宿管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
I_LPL3 小时前
hot100贪心专题
数据结构·算法·leetcode·贪心
兑生3 小时前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
daidaidaiyu3 小时前
一文学习 Spring 声明式事务源码全流程总结
java·spring
颜酱3 小时前
DFS 岛屿系列题全解析
javascript·后端·算法
WolfGang0073214 小时前
代码随想录算法训练营 Day16 | 二叉树 part06
算法
零雲4 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
2401_831824965 小时前
代码性能剖析工具
开发语言·c++·算法
Sunshine for you6 小时前
C++中的职责链模式实战
开发语言·c++·算法
qq_416018726 小时前
C++中的状态模式
开发语言·c++·算法