본문 바로가기

전체 글91

[자료구조] 버블 정렬 자료구조의 기본 알고리즘 " 버블정렬 " 구현이 간단하고 쉬운 정렬부터 하다보니, 여전히 성능에서는 많이 떨어지는 경향이 있네요. 버블정렬이란, 맨 앞 2개 데이터씩 비교하면서 작은 수를 한 칸씩 앞으로 당겨오는 것을 말해요. 계속 당겨오는 것을 반복하면서 데이터 개 수만큼 반복하면 어느새 정렬이 되어있게되죠 :-) 그래서 시간복잡도는 O(n²) 그림을 보면서 이해하도록 하죠 :) 이렇게 한 바퀴를 돌면 가장 큰 수인 [4]가 맨 뒤로 정렬되게 되죠. 그럼 이 규칙을 확인해보면, 한 바퀴 돌때마다 가장 큰 수가 맨뒤로 정렬되는 규칙이 확인했구요! 그렇다면 다음번 비교할 때는 맨 마지막 값을 하나씩 빼면서 비교하면 되겠군요!? 이런 규칙을 통해서 최종 정렬 결과는 [ 1, 2, 3, 4 ] 가 나오겠죠? .. 2018. 9. 23.
[JAVA] 이클립스로 파라미터가 있는 컴파일 사용하기 해당 글은 네이버 블로그에서 작성된 글이며, 티스토리로 이관된 포스트입니다. 이클립스 처음 설치하고 소스 작성한다음에 컴파일하는데 옵션이 있는 소스를 컴파일하니까 계속 에러가 발생하더라구요. 그래서 수업시간에 배워서 다시 혼자 하게됬어요 ㅎ 먼저 소스를 다 작성하셨다면 아래 사진과 같이 해주시면 됩니다. Run 메뉴를 클릭하셔서 목록에 "Run Configurations"가 있어요 이거 누르셔서 들어가시면 됩니다. 그럼 위 사진과 같은 창이 나타날텐데요. 오른쪽에 위치한 것중에서 Arguments탭으로 이동하신다음에 첫번째 메모칸있죠? 저곳에 원하는 옵션값을 적어주시면 됩니다. 만약 필요한 옵션값 갯수가 3개라면 띄어쓰기로 구분해야하며, 값 3개를 넣어주시면 됩니다. 그리고 Run 버튼을 눌러주시면 컴파.. 2018. 9. 23.
[자료구조] 삽입 정렬 자료구조의 기본 알고리즘 " 삽입정렬 " 이번에도 구현이 아주 쉽지만, 시간복잡도가 미친듯이 높은 한마디로 성능이 좋지않은 정렬 방법을 소개하려해요. 삽입정렬이란, 원본 데이터에서 값을 하나씩 꺼내서 새로운 리스트의 가장 마지막 값 또는 처음 값부터 끝까지 전체 데이터를 비교해서 해당 데이터에 맞는 자리에 삽입을 해주는 정렬이에요. 그래서 시간복잡도는 O(n²) 위 글 요약으로만 이해되셨을 수도 있지만, 이해가 잘 되지 않는 분을 위해 그림과 함께 다시 한번 더 설명해보도록 하죠. 그림처럼 정렬되지 않은 데이터가 [ 3 , 2 , 1 , 4 ] 일 때, 데이터를 하나씩 꺼내와서, 새로운 리스트에 들어가있는 모든 데이터와 비교를 하여 정렬하는 알고리즘입니다. 구현은 매우 쉽지만 실무에서는 거의 사용되지 않.. 2018. 9. 23.
[자료구조] 선택 정렬 자료구조의 기본 알고리즘 " 선택 정렬 " 선택정렬이란, 가장 무식하고 단순한 방법으로 비교하여 정렬하는 알고리즘이죠 최악의 경우 데이터가 많아질수록 속도 성능은 제곱만큼 하락하는 정말 우리나라에선 사용 못할거에요 그쵸? 그리하여 결론은 선택정렬의 시간복잡도는 O(n²) 그럼 알고리즘을 하나하나 비교해보도록 해볼게요. 아래와 같이 랜덤한 숫자 5개가 있다고 가정한다면 Step 1. 8 9 10 2 6 1-1 : 첫 번째 비교대상의 시작은 8이니, 배열의 최소 값은 8. 1-2 : 9는 최소값(8)보다 작은가 ? No ! 1-3 : 10은 최소 최소값(8)보다 작은가 ? No ! 1-4 : 2는 최소값(8)보다 작은가 ? Yes ! 그렇다면 최소값은 2. 1-5 : 6은 최소값(2)보다 작은가 ? No !.. 2018. 9. 23.
[JQuery] 드래그앤드랍 구현 JQuery의 첫 개발 포스트는 드래그앤드랍을 활용해서 리스트 순서를 바꾸는 기능을 구현해볼거에요 :-) 물론 순서를 바꾸고, 바꾼 순서를 콘솔을 통해 보여주는 기능까지 구현해볼거니까, 걱정하지마세요 ! 먼저 위에 그림은 완성된 모습이에요. 일단 Item 순서가 약간 바뀌어있는데, 이건 제가 화면에서 드래그앤드랍을 통해 바꿔봤어요 ! 그러면 잡소리 안하고 바로 소스 리뷰와 함께 바로 아래에 샘플소스 압축파일을 받아보시면 되요 ! Item 1 Item 2 Item 3 Item 4 Item 5 Item 6 Item 7 확인 소스는 무진장 간단해요 ! ul, li 태그로 리스트를 만들어주고, 움직이게 해주기위한 JQuery 라이브러리를 사용해서 간단하게 구현해보았어요 JQuery는 다운로드는 여기 클릭하셔서 .. 2018. 9. 22.