디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

자료구조를 직접 구현할 일은 별로 없긴 하지만 개념은 중요함모바일에서 작성

프갤러(223.39) 2025.10.10 13:38:31
조회 419 추천 9 댓글 8

컴퓨터로 하는 작업은 대부분이 데이터를 다루는 일임


즉 자료를 받아서 저장하고 처리하고 보내고 삭제하고 하는 작업들이 대다수임


자료구조라는 건 이 자료를 저장할 때 어떻게 저장할까 하는 부분을 다루는 거임


그래서 자료구조의 원리는 당연히 이해해야 하고 컴공 전공생들은 전필로 배우게 됨



예를 들어봄


DB 인덱싱의 원리는 이진탐색임 (해쉬를 사용하는 경우도 있긴 한데 일반적이진 않음)


이진탐색을 통해 원하는 데이터를 빠르게 찾아내자는 게 인덱싱의 핵심 아이디어임


여기서 이진탐색에 가장 적합한 자료구조는 뭘까? 바로 이진트리 구조임


근데 이진트리를 생으로 쓰면 비효율적이니 그걸 개조해서 사용했고 그 결과물이 B+트리임


만약 자료구조를 잘 이해했다면, "N개의 데이터 중 x값이 6 이상인 데이터를 x값 기준으로 정렬해서 가져오고 싶은데, M 번째 자료부터 M+30 번째 자료까지를 끄집어내고 싶다" 같은 쿼리문을 날리면 x값에 인덱싱이 걸려있다고 해도 데이터를 끄집어내는 데 걸리는 시간이 대략 (logN) + M + 30 임을 직관적으로 알 수 있음


왜 그럴까? 왜냐면 B+트리에서는 그 M 번째 데이터가 무슨 데이터인 지 빠르게 알 수 있는 방법이 없거든


이진트리는 기본적으로 비선형 자료구조이니 말 할 필요조차 없고, B+트리는 리프노드에 링크드 리스트 형태로 데이터가 깔려있기는 하지만 결국 링크드 리스트 자체가 M번째 데이터를 가져오려면 O(M)이 걸리는 자료구조이기 때문임


만약 자료구조를 잘 이해하고 있다면 이런 점을 곧바로 파악할 수 있음


하지만 그저 "인덱싱은 데이터를 알아서 잘 끄집어와주는 무언가" 라고만 이해하고 있었다면 이 부분에서 빵꾸가 뚫리는 거임


나중에 M 값에 뭔가 큰 값이 들어갈 일이 있다면 "흠 얘는 M개의 데이터를 스캔하게 될텐데? 이거 괜찮나?" 라는 생각을 할 줄 아는 사람과 그냥 아무것도 모르고 문제의 소지가 될 수 있다는 발상 자체를 못 하는 사람은 결국 응용력에서 차이가 나게 됨

추천 비추천

9

고정닉 1

1

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 며느리, 사위되면 시댁, 처가에 잘할 것 같은 스타 운영자 25/10/13 - -
공지 프로그래밍 갤러리 이용 안내 [96] 운영자 20.09.28 48000 65
2896877 음기 충전 발명도둑잡기(118.235) 03:34 1 0
2896874 30대 후반 무경력 백수 직업추천 받습니다. [1] 프갤러(121.88) 03:13 18 0
2896870 새벽에 연락와서 이제 일어남. [2] ㅆㅇㅆ(124.216) 02:05 27 0
2896867 나는 클린 아키텍쳐보다 단순 포트 어댑터가 편한듯 [2] ㅆㅇㅆ(124.216) 01:59 20 0
2896861 단순 논문 재현 하는데 왜 이렇게 요구사항이 많은지 [3] ㅆㅇㅆ(124.216) 01:16 38 0
2896860 교수새끼들만 끼면 그냥 일이 복잡해지노 ㅆㅇㅆ(124.216) 01:15 21 0
2896859 미국 핵심산업 안보공급망 확보를 위한 투자가 늘겠구나.. hrin(220.120) 00:55 10 0
2896858 ❤✨☀⭐⚡☘⛩나님 소중합니당⛩☘⚡⭐☀✨❤ ♥덩냥이♥갤로그로 이동합니다. 00:50 18 0
2896856 글로벌 인재 포럼 참가 신청했다 hrin(220.120) 00:47 21 0
2896855 요즘은 웨스턴 디지털이 좋아 보이는구나 hrin(220.120) 00:46 21 0
2896853 재매이햄 부동산 규제 빡세네 hrin(118.235) 00:39 17 0
2896852 코딩테스트가 이제 의미가 있나싶음 [2] 카드캡터체리갤로그로 이동합니다. 00:36 32 0
2896851 정말 화가 난다. 개미만도 못한 스스로가 너무 역겹다. ㅇㅇ(223.39) 00:34 16 0
2896850 모기 느낌.. ♥덩냥이♥갤로그로 이동합니다. 00:24 20 0
2896847 개발 때려치우고 전산직 갈려는데 뭐준비해야하냐? ㅇㅇ(220.77) 00:05 21 0
2896844 카카오 코테는 ㅈ랄맞은 듯 [1] 프갤러(110.13) 10.16 53 0
2896840 반지의 제왕 1편 마져 보는 중 [2] 발명도둑잡기(118.235) 10.16 28 0
2896838 객체지향 딱 알려준다. [1] 프갤러(211.234) 10.16 44 0
2896836 ㅎ2 ㅇㅅㅇ [1] 류류(210.123) 10.16 22 0
2896834 #인의#의리#낭만#검객 ♥덩냥이♥갤로그로 이동합니다. 10.16 22 0
2896833 디시 코드이그나이터 쓰네 프갤러(175.116) 10.16 17 0
2896832 AI 코딩, 내가 환장하는거. 프갤러(59.16) 10.16 25 0
2896831 양질의 일자리 vs 인재들의 생활방식 선호 [4] chironpractor갤로그로 이동합니다. 10.16 47 0
2896830 러스트가 길이고 진리고 생명이다. 프갤러(211.234) 10.16 14 0
2896829 극우 이 이기적인 놈들 나라가 망해도 좋다 이거냐? [2] ♥덩냥이♥갤로그로 이동합니다. 10.16 44 0
2896828 AI 바이브 코딩 말해 줘? 프갤러(59.16) 10.16 29 0
2896826 Chatter BBS 분탕 가능방 오픈! [1] 파란빤스갤로그로 이동합니다. 10.16 27 0
2896823 개발 ai 스타일 3가지 프갤러(183.109) 10.16 40 0
2896818 수고했어양❤+ [2] ♥덩냥이♥갤로그로 이동합니다. 10.16 26 0
2896816 고전게임 [6] 배구공(119.202) 10.16 35 0
2896815 C++ 인생 40 년 갈아 넣었습니다. [3] 프갤러(59.16) 10.16 51 0
2896814 AI 바이브 코딩 인생 40 년 갈아 넣었습니다. 프갤러(59.16) 10.16 28 0
2896813 이런 글 너무 좋은데 어떠니 [1] ㅇㅇ갤로그로 이동합니다. 10.16 47 0
2896812 영포티가 뭐임 배구공(119.202) 10.16 29 0
2896811 하.. 쒸불;; 딱 대 ♥덩냥이♥갤로그로 이동합니다. 10.16 85 0
2896810 일이 씨발 요실금걸린 노인네 오줌줄기마냥 [3] ㅆㅇㅆ(124.216) 10.16 47 0
2896809 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥덩냥이♥갤로그로 이동합니다. 10.16 22 0
2896807 나님 기분 ㄱㅆㅅㅌㅊ !!! ♥덩냥이♥갤로그로 이동합니다. 10.16 32 0
2896806 나님 배뷰르니 슬슬 시작해볼까낭? ♥덩냥이♥갤로그로 이동합니다. 10.16 34 0
2896805 AI에게 욕 잘하는법 [2] 프갤러(183.109) 10.16 35 0
2896804 네스트 모듈 순환참조 열받네 [4] 프갤러(27.166) 10.16 41 0
2896802 생각해보니 좀 열받네? 그냥 일주면되지 [7] ㅆㅇㅆ(124.216) 10.16 70 0
2896801 뉴비 c++을 잘하고싶어요 [3] ㅇㅇ(118.235) 10.16 62 0
2896800 근데 프로그래밍 아는게 없어가지고 [2] ㅆㅇㅆ(124.216) 10.16 49 0
2896799 슬슬 ㄹㅇ 진짜 마라톤 계절이 오는듯 주말에 장거리 함 조져야징 ♥냥덩이♥갤로그로 이동합니다. 10.16 41 0
2896797 뉴비 객체지향 제대로 이해한게 맞을까요? [7] ㅇㅇ(118.235) 10.16 109 0
2896795 현시대는 토발즈도 1찍 짱깨편인 무서운 시대이다ㅋㅋ번식 더 해줘라 이기 타이밍뒷.통수한방(1.213) 10.16 17 0
2896794 월세 폭등 리짜이밍 ㅋㅅㅋ ♥냥덩이♥갤로그로 이동합니다. 10.16 24 0
2896793 김대중자서전 드립 치니까 생각난건데 대구 살때 서문시장서 [2] ㅆㅇㅆ(124.216) 10.16 50 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2