[버블정렬] 처음부터 끝까지 인접하는 인덱스의 값을 순차적으로 비교하면서 큰 숫자를 가장 끝으로 옮기는 알고리즘이다. 1. 다음과 같은 리스트가 있다고 하자. [ 10, 2, 7, 21, 0 ] 2. 10과 2를 비교하여, 10이 더 크므로 자리를 바꾼다. [ 2, 10, 7, 21, 0 ] 3. 10과 7를 비교하여, 10이 더 크므로 자리를 바꾼다. [ 2, 7, 10, 21, 0 ] 4. 10과 21을 비교하여, 21이 더 크므로 자리를 바꾸지 않고 이제 21과 0을 비교하여 자리를 옮긴다. [ 2, 7, 10, 0, 21 ] 5. 다시 앞에서부터 2와 7을 비교한다... 5. 다음이 한 사이클이다. 이를 리스트의 요소 갯수만큼 반복하면 모든 값들이 정렬 되어있을 것이다. 6. 단, 다음 사이클을 ..
깊은 복사
[얕은 복사] 파이썬 자체 함수인 id() 를 통해서 메모리의 id를 확인하여 깊은 복사를 했는지 얕은 복사를 했는지 구별할 수 있다. scores = [9,8,5,7,6,10] # 얕은 복사 scoresCopy = scores print(f'id(scores):{id(scores)}') #id는 메모리에 할당된 값을 찍어보는 것 print(f'id(scoresCopy):{id(scoresCopy)}') print() ''' id(scores):1342407589568 id(scoresCopy):1342407589568 ''' [깊은 복사1] 리스트 함수 append()를 통해 요소 값 만을 복사해오는 방식으로 깊은 복사를 할 수 있다. #깊은 복사1 scoresCopy1 = [] for s in sco..