JavaPool(기초 로직연습)
배열 오름차순으로 출력(temp 활용)
Ms.Pudding
2022. 1. 8. 02:51
2,5,1,7 이 들어있는 배열 오름차순으로 순서대로 출력하기
오름차순 (ascend) 저 -> 고
내림차순 (desc) 고->저
arraylist를 파라메터로 담아올때 똑같이 ArrayList<Integer> a 이런식으로 담아준다.
public class MySortIntArray{
public static void main(String[] args){
ArrayList<Integer> digits = new ArrayList<Integer>();
digits.add(2);
digits.add(5);
digits.add(1);
digits.add(7);
my_sort_int_array(digits);
} //메인클라스 메소드
public static void my_sort_int_array(ArrayList<Integer> a){
for(int i=0;i<a.size();i++){
int temp = 0;// 항상 초기화 해줘야되서 for문 안에 넣음
//if문에 a.get(i+1)을 만들어 놓음 만약 i가 3일 때 if문이 계속 돌아가면
//a.get(4)도 검사해야함 . 범위 밖임 .. 따라서 i+1에서 나가게 해줌
if(i+1==a.size()){
break;
}
if(a.get(i)>a.get(i+1)){
temp = a.get(i);
a.set(i,a.get(i+1))
a.set(i+1,temp)
i=-1 // i는 위로 올라가면 i++를 받기 때문에 if문을 빠져나가면 i=0부터 시작한다.
}
}
for(int i=0;i<a.size();i++){
System.out.print(digits.get(i)+" ");
}
}//array메소드
}