728x90 분류 전체보기491 12살 천재 어플제작 소년 이야기 https://www.youtube.com/watch?v=aREmfTjeKbI&list=PLVK_NxDpUAr2l0OH5tnpD_bLW9K-84C8g&index=5 12살이라 ...저는 12살 때 친구들과 학교 계단에 앉아서 4반에 누구랑 누가 사귄다. 이런 이야기만 했었는데 말이죠. 이 아이는 기술에 관심이 많아서 앱을 만들고 싶어했고 아이폰과 함께 출시된 아이폰 소프트웨어 개발 키트를 통해 앱 개발을 시작했다네요. 그리고 만든게 오늘의 운세를 지구의 색깔로 보여주는 지구 운세 앱, 저스틴비버의 얼굴(?)을 이용한 두더지 앱 개발이었습니다. 부모님을 설득해서 앱을 출시했고 학교에서 앱 클럽을 만들고 선생님을 비롯한 많은 이들에게 피드백을 들으면서 앱 개발을 했고 수익금을 지역사회에 기부하기도 한다네요... 2020. 6. 1. 계수 정렬(Counting Sort) 이때까지 배운 O(N log N)의 시간복잡도인 선택, 버블, 삽입 정렬 그리고 O(N^2)의 시간복잡도인 퀵, 병합, 힙 정렬을 배웠습니다. 가장 빨랐던 정렬은 아무래도 퀵정렬이었는데요. 이거보다 빠르게 정렬을 하는 계수 정렬에 대해 알아보겠습니다. 다음의 5 이하 자연수 데이터들을 오름차순 정렬하세요. 1 3 5 2 3 1 3 4 4 3 4 2 3 4 3 1 1 2 4 3 3 1 2 3 4 5 1 3 2 4 정렬할 데이터 개수가 30개입니다. 특징은 모든 데이터가 1부터 5 사이입니다. 계수 정렬은 이처럼 적절한 '범위 조건'이 있어야한다는 전제에서 굉장히 빠른 알고리즘입니다. 그 속도는 O(N) 입니다. ( 저도 처음보는 시간복잡도의 속도입니다.) 계수 정렬(Counting Sort)는 단순하게 '.. 2020. 6. 1. 힙정렬 저번주에 공부하긴 했지만 이해하는데 좀 시간이 걸리는 바람에 지금 포스팅합니다. 힙정렬은 퀵정렬과 병합정렬과 더불어 시간복잡도 O(nlogn) 을 가진 정렬입니다. 힙정렬을 이해하기 위해서는 완전 이진 트리를 이해해야하는데요. 이진 트리는 자식노드가 두개 이하 트리를 의미합니다.. 여기서 가장 위에 있는 7은 루트노드(root)입니다. 그리고 8과 5의 부모노드입니다. 2와 3은 8의 자식노드입니다. 가장 밑 부분인 2 3 1 2 는 리프노드(leaf)라고 합니다. 트리는 다양하게 생길 수 있습니다. 이런식도 가능합니다. 그 중에서 이진 트리는 자식노드가 두개 이하인 트리이고 완전 이진트리는 자식노드가 두개인 트리를 의미합니다. 간단하죠? 힙은 이런 완전 이진트리를 사용합니다. 한번 트리를 만들어 볼까요.. 2020. 6. 1. 개발자들이 인터넷 익스플로러를 싫어하는 이유 컴퓨터공학과에 재학중인 저도 만약 브라우저를 인터넷 익스플로어를 쓰면 친구들이 난리가 납니다. '으~~~누가 인터넷 익스플로어 써! 크롬써 크롬'! 저도 웃으면서 친구들을 놀리곤 했지만 왜 그런지는 몰랐는데요.(그냥 따라가는 편) 웹표준이라는 게 있습니다. 웹을 만들때 A 회사, B 회사, C 회사가 웹 형식이 다르면 개발자들은 3가지 다른 버전에서 다 돌아가는 웹을 만들어야겠죠. 그러면 돌아가는 것도 다 테스트를 해줘야하고 개발 시간도 한참이나 더 들어갑니다. 그래서 웹표준이 생긴 겁니다. 그럼 개발자들이 인터넷 익스플로러를 싫어하는 이유는? 이 웹표준을 지키지 않기 때문입니다. 마이크로소프트의 익스플로러는 90년대 말, 넷스케이프와의 전쟁에서 승리한 이후 웹 시장을 장악했습니다. 안일해진 덕분에 업데.. 2020. 6. 1. 이전 1 ··· 97 98 99 100 101 102 103 ··· 123 다음 728x90