이 글에서는 주로 버블 정렬로 제어되는 루프가 무엇인지 소개합니다. 그런 다음 버블 정렬 알고리즘은 이중 레이어 for 루프 또는 단일 for 루프로 구현할 수 있습니다. 아래에서는 구체적인 코드 예시를 통해 버블정렬 구현 방법을 소개하겠습니다!
1. 버블 정렬 방법이란?
첫 번째 요소가 두 번째 요소보다 크면 위치를 바꾼 다음 계속해서 아래를 살펴보세요.
2. 두 가지 버블 정렬 방법의 단계:
다음 배열 정렬을 비교하세요. (22,3,6,54,86,21,35,1,65,4)
1. 일반적인 버블 정렬 방법:
구현 단계:
1: 루프 중첩을 위한 이중 레이어; 2. 판단 조건이 충족되면 두 숫자의 위치를 바꿉니다.
public class BubbleSort { public static void main(String[] args) { int a[]={22,3,6,54,86,21,35,1,65,4}; for(int i= 0 ;i<a.length;i++){ //第一层循环 for(int j=0;j<a.length-i-1;j++){ //第二层循环 if(a[j]>a[j+1]){ //交换位置 int tem =a[j]; a[j]=a[j+1]; a[j+1]=tem; } } } System.out.println("排好序:"); for(int aa:a){ System.out.print(aa+" "); } } }
결과 표시:
더블 레이어 for 루프는 버블 정렬 방법을 구현합니다.
a.) 정렬할 배열과 배열의 상대적 길이를 정의합니다.
int a[]={22,3,6,54,86,21,35,1,65,4}; int team=a.length-1;
b.) 정렬 구현:
1. 단일 for 루프
2.
for(int i= 0 ;i<team;i++){ if(a[i]>a[i+1]){ int tem =a[i]; a[i]=a[i+1]; a[i+1]=tem; } }
3. for 루프가 종료되는지 확인합니다.
4. for 루프가 끝나면 i에는 -1 값이 할당되고 팀 길이는 1만큼 줄어들며 다음 루프가 계속됩니다. ;
if(i==team-1){ i=-1; team--; }
c.) 전체 프로그램:
//单个for循环的冒泡排序法 public class BubbleSort { public static void main(String[] args) { int a[]={22,3,6,54,86,21,35,1,65,4}; int team=a.length-1; for(int i= 0 ;i<team;i++){ if(a[i]>a[i+1]){ int tem =a[i]; a[i]=a[i+1]; a[i+1]=tem; } if(i==team-1){ i=-1; team--; } } System.out.println("排好序:"); for(int aa:a){ System.out.print(aa+" "); } } }
결과 표시:
단일 for 루프는 버블 정렬을 구현합니다.
이 기사는 PHP 중국어 웹사이트에서 가져온 것입니다. PHP 중국어 웹사이트 비디오 강좌 채널!
위 내용은 버블 정렬 알고리즘을 제어하는 루프는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!