Taking baby-developer steps
22.05.09.push_swap - 정렬 알고리즘 최적화-7 본문
sort_a_mid가 이상이 있는 부분은 i가 바닥에 가까워, rra 연산을 사용할 때 였고, 해당 부분을 수정해서 a_stack에 있는 ㄹ구간을 정렬시켰다.(도중에 ㅁ구간을 a_stack에서 정렬한 뒤 다시 b스택으로 옮겼다가, ㄹ구간을 a_stack으로 옮겨서 정렬하는것이 효율적이지 못하다고 생각해, 정렬되지 않은 구간이 ㄹ, ㅁ 뿐일때, ㄹ구간을 먼저 a스택으로 옮겨 정렬하고, b스택에서 최소값을 a로 넘기는 방법으로 변경했다.)
=> ㄹ구간 정렬까지 사용한 명령어의 갯수는 총 5347개이다.
=> ㄹ 구간 정렬 이후, b_stack에서 바로 최소값을 하나하나 찾아서 a_stack으로 넘기니, 명령어의 수가 급격히 증가해버렸다. 다시 ㅁ구간을 따로 정렬하도록한다.
이미 구현한 함수들의 재사용성을 높이기 위해, 다시 ㅁ구간을 a스택에 먼저 빼두고 정렬하기로 했다.
'Logs > 학습 log' 카테고리의 다른 글
22.06.14 minitalk - server 프로그램 구현 (0) | 2022.06.14 |
---|---|
22.06.14. push_swap 프로그램 과제 완료 / minitalk 과제 시작 (0) | 2022.06.14 |
22.05.06.push_swap - 정렬 알고리즘 최적화-6 (0) | 2022.05.06 |
22.05.05.push_swap - 정렬 알고리즘 최적화-5 (0) | 2022.05.05 |
22.05.04.push_swap - 정렬 알고리즘 최적화-4 (0) | 2022.05.04 |
Comments