목록2019/04/23 (3)
꿈 많은 사람의 이야기
요즘 노션이 정말 핫하다 notion이라는 이것은 문서 작업과 노트 작업, task 작업 등 다양한 것을 할 수 있는 애플리케이션입니다. 많은 사람들이 에버노트(evernote)를 많이 사용했지만 노션이 나온 지금 엄청난 속도로 notion에 합류하고 있습니다. 도대체 이 노션이 뭐길래? 저도 지금 페이스북에서 DPER 이라는 과정과 제 본인 스케줄, 하루 일정 정리, 일기 등을 다 이 노션으로 처리하고 있습니다. 이게 지금 제 노션입니다. https://www.notion.so/lsjsj92/DPER-6a11906183f447bc93470e1c2f381613 불러오는 중입니다... 이렇게 들어올 수 있는데요! 이렇게 workspace를 두어서 본인의 주제에 따른 혹은 팀의 주제에 따라서 작업장을 둘수 ..
이번 포스팅은 합병정렬(Merge sort)에 대해서 정리합니다. 병합정렬이라고도 불리우는 이 정렬은 데이터를 잘게 쪼개고(divide) 크기를 비교해 정렬합니다(conquer) 그리고 이를 합칩니다(merge) 이를 더 이상 합칠 array가 없을 때까지 반복합니다. 위 그림을 보시면 쉽게 나와있습니다. 칸아카데미 페이지에 나와있는 설명인데요. 위에선 2개씩 잘개 쪼갭니다. 쪼갠 뒤 정렬을 하면서 합쳐줍니다. 그러면 최종적으로 정렬된 데이터가 나오게 되겠죠! 그럼 코드로는 어떻게 될까요? 파이썬을 활용해서 코드를 작성해봅니다. 풀 코드를 보기 전에 merge_sort가 어떻게 보이는지 봅니다. list가 1보다 작거나 같으면 return하고 그게 아니면 mid 값을 // 2로 해서 절반을 기준으로 합니..
이번 포스팅은 파이썬으로 자료구조, 알고리즘 공부하기 쉘 정렬(shell sort)과 버블 정렬(bubble sort)에 대해서 정리합니다. 여러가지 정렬 알고리즘이 있습니다. 지난 포스팅에선 삽입 정렬, 선택 정렬에 대해서 보았는데요 기본적인 정렬 중 버블 정렬이라는 것이 있습니다! 버블 정렬은 말 그대로 거품처럼 뽀글뽀글 올라가며 정렬을 하는데요 예시를 들면 이렇게 진행됩니다. 처음부터 하나씩 비교를 하면서 큰 것을 뒤쪽으로 몰아넣죠. 그리고 fix 시킵니다. 그리고 그 다음 루틴에서 또 돌고.. 이렇게 진행합니다. 바로 파이썬 코드로 봅시다 핵심은 def bubble_sort입니다. 정렬되지 않은 list를 입력 받습니다. 2개의 for문을 돌면서 진행합니다. 맨 처음 for문은 len - 1 범위..