TIPS:冒泡排序的引出
外层i(第n趟) | 内层j(比较次数) |
---|---|
0 | 4 |
1 | 3 |
2 | 2 |
3 | 1 |
nums={2,12,4,20,1}
for(int i=0;i<5;i++){
for(int j=0;j<5-i;j++){
if(nums[j]>nums[j+1]){
int temp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=temp;
}
}
}
数组经典习题
前言:本案例将对经典的三角形问题进行解析,利用外层循环以及内部循环的结构结构来进行解决,书写的步分别为:
打印矩形,打印直角三角形,打印倒置直角三角形,打印等腰直角形,打印菱形,打印空心菱形,打印九九乘法表,嗯,暂且就这样吧
矩形
分析
****
****
****
****
外层 | 内层 |
---|---|
0 | 4 |
1 | 4 |
2 | 4 |
3 | 4 |
4 | 4 |
package com;
public class two {
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
直角三角形
*
**
***
****
外层i | 内层 j |
---|---|
0 | 1 |
1 | 2 |
2 | 3 |
3 | 4 |
i与j之间的关系:j=i+1
package com;
public class two {
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
for (int j = 0; j < i+1; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
倒置直角三角形
****
***
**
*
外层i | 内层 j |
---|---|
0 | 4 |
1 | 3 |
2 | 2 |
3 | 1 |
i与j之间的关系:i+j=4 j=4-i
package com;
public class two {
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4-i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
等腰直角三角形
*
***
*****
*******
外层i | 内层 j | 内层(空格)k |
---|---|---|
0 | 1 | 3 |
1 | 3 | 2 |
2 | 5 | 1 |
3 | 7 | 0 |
i与j的关系:i=2*i+1
i与k的关系:i+k=3 k=3-i
package com;
public class two {
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
for (int k = 0; k < 4-i; k++) {
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
System.out.print("*");
}
System.out.println();
}
}
}
菱形
*
***
*****
*******
*****
***
*
参考等腰三角形+倒置
package com;
public class two {
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
for (int k = 0; k < 4-i; k++) {
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
System.out.print("*");
}
System.out.println();
}
for (int i = 3; i >=0; i--) {
for (int k = 0; k < 4-i; k++) {
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
System.out.print("*");
}
System.out.println();
}
}
}
空心菱形
package com;
public class two {
public static void main(String[] args) {
for (int i = 0; i < 4; i++) {
for (int k = 0; k < 4-i; k++) {
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
if(j==0||j==2*i){
System.out.print("*");
}else {
System.out.print(" ");
}
}
System.out.println();
}
for (int i = 3; i >=0; i--) {
for (int k = 0; k < 4-i; k++) {
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
if(j==0||j==2*i){
System.out.print("*");
}else {
System.out.print(" ");
}
}
System.out.println();
}
}
}
九九乘法表
外层i | 内层 j |
---|---|
0 | 1 |
1 | 2 |
2 | 3 |
3 | 4 |
package com;
public class two {
public static void main(String[] args) {
for(int i=1;i<=9;i++){
for(int j=1;j<i+1;j++){
System.out.print(i+"*"+j+"="+(i*j)+" ");
}
System.out.println();
}
}
}