[알고리즘] 역순 정렬 및 값 교환

2021. 2. 11. 07:11·Computer Science/자료구조와 알고리즘

x와 y의 값이 있다고 할 때, x와 y값을 서로 바꾸는 과정은 아래와 같다.

1. x값을 tmp에 보관

2. y값을 x에 대입

3. tmp에 보관한 값(처음 x값)을 y에 대입

 

배열요소를 이용하면 x와 y대신 arr[x] arr[y]라 쓸 뿐 과정은 동일하다.

tmp = arr[x];
arr[x] = arr[y];
arr[y] = tmp;

이렇게 두 요소를 교환하는 것은 꽤 자주 나오는 유형이기 때문에, swap이라는 메소드로 구현하는 것이 좋다.

public static void swap(int[] arr,int idx1, int inx2){
	int tmp = arr[idx1];
    arr[idx1] = arr[idx2];
    arr[idx2] = tmp;
}

 

저작자표시 비영리 변경금지 (새창열림)

'Computer Science > 자료구조와 알고리즘' 카테고리의 다른 글

[Algorithm] Exhaustive Search(완전검색), Greedy Algorithm(탐욕 알고리즘), Sort(정렬)  (0) 2021.07.07
[JAVA] 백준 10809번 : 알파벳 찾기  (0) 2021.03.30
[알고리즘] 드모르간 법칙(De Morgan's law)이란?  (0) 2021.02.11
[알고리즘] 최댓값 구하기 - java  (0) 2021.02.11
[JAVA] 백준 11720번 : 숫자의 합  (0) 2021.02.03
'Computer Science/자료구조와 알고리즘' 카테고리의 다른 글
  • [Algorithm] Exhaustive Search(완전검색), Greedy Algorithm(탐욕 알고리즘), Sort(정렬)
  • [JAVA] 백준 10809번 : 알파벳 찾기
  • [알고리즘] 드모르간 법칙(De Morgan's law)이란?
  • [알고리즘] 최댓값 구하기 - java
BS Kwak
BS Kwak
  • BS Kwak
    Slow but steady wins the race
    BS Kwak
  • 전체
    오늘
    어제
    • 카테고리 (161)
      • Project (2)
      • Next.js (3)
      • HTML+CSS+JS (17)
      • Computer Science (139)
        • Programming Language (52)
        • 자료구조와 알고리즘 (75)
        • Digital circuit (3)
        • 기타 error (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    해시
    LNK2001
    cmd error
    티스토리챌린지
    c++error
    런타임 에러
    mysql error
    leetcode
    오블완
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
BS Kwak
[알고리즘] 역순 정렬 및 값 교환
상단으로

티스토리툴바