본문 바로가기

728x90
반응형

알고리즘

그림으로 쉽게 이해하는 자료구조 큐(Queue) (ft. 큐를 배열기반에서 절대 선형으로 구현하지 않는 이유) 그림으로 쉽게 이해하는 자료구조 큐(Queue) (ft. 큐를 배열기반에서 절대 선형으로 구현하지 않는 이유) 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 자료구조 중에서 중요한 큐(Queue)에 대해서 같이 알아보겠습니다. 어렵지 않으니 잘 따라와주세요~! - 큐(Queue)란? 이전 포스팅에서 배운 스택에서는 먼저 들어온 데이터가 나중에 빠지는 후입선출의 LIFO(리포)구조라고 배워습니다. 자료구조 스택(stack)이란? (ft. 그림으로 쉽게 설명) 자료구조 스택(stack)이란? (ft. 그림으로 쉽게 설명) 자료구조 스택(stack)이란? (ft. 그림으로 쉽게 설명) 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 자료구조 중에서 중요한 스택에 대해서 같이 알아보겠습니다. - 스택이란? -> 스택.. 더보기
자료구조 스택(stack)이란? (ft. 그림으로 쉽게 설명) 자료구조 스택(stack)이란? (ft. 그림으로 쉽게 설명) 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 자료구조 중에서 중요한 스택에 대해서 같이 알아보겠습니다. - 스택이란? -> 스택은 후입선출의 대표적인 선형 자료구조 중 하나입니다. 후입선출이란 영어로는 Last-in-first-out 줄여서 LIFO(리포)라고 합니다. 나중에 들어온 데이터가 먼저 나간다는 뜻입니다. 쉽게 예를들면, 우리가 인터넷 브라우저에서 뒤로가기 버튼 많이 사용하시죠. 뒤로가기 버튼을 누르면 가장 최근에 열었던 마지막 페이지가 나옵니다. 그리고 한 번 더 누르게 되면 그 이전 그 이전 페이지가 나옵니다. 이런식으로 역으로 찾아들어가게 됩니다. 또 control+Z로 실행취소를 할 때도 마찬가지 입니다. 가장 최근에 입력했.. 더보기
이중연결리스트 (Double Linked List) 사용법 (ft. 데이터 삭제하기) 이중연결리스트 (Double Linked List) 사용법 (ft. 데이터 삭제하기) 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 리스트 자료구조 중에서도 특히 이중 연결 리스트(Double Linked List)의 데이터 삭제하기에 대해 같이 알아보겠습니다. - 이중연결리스트 데이터 삭제하기 이중 연결 리스트에서 인덱스를 통한 데이터 삭제하기 연산에 대해 알아봅시다. 인덱스로 들어오는 과정은 앞선 포스팅에서 말씀드린 것처럼 동일합니다. 절반을 기준으로 헤드와 테일의 가까운쪽에서 부터 찾아와 들어옵니다. 그렇게 인덱스를 찾아들어와서 이번에는 아래그림에서 이 초록색 node가 우리가 삭제해야 할 노드라고 생각해봅시다. 그럼 이제 우리가 삭제 할 이 초록색 node를 기준으로 prev노드와 다음 노드인 ne.. 더보기
이중연결리스트 (Double Linked List) 사용법 (ft. 데이터 추가하기) 이중연결리스트 (Double Linked List) 사용법 (ft. 데이터 추가하기) 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 리스트 자료구조 중에서도 특히 이중 연결 리스트(Double Linked List)의 사용법에 대해 같이 알아보겠습니다. - 이중연결리스트 데이터 삽입하기 우리가 연결리스트(SingleLinkedList)에서 데이터 삽입과 삭제를 할 때 next point를 변경한다고 배웠습니다. 이중연결리스트(DoubleLinkedList)에서는 이 포인트를 변경해주는 작업을 next point뿐만 아니라 prev point까지 신경을 써줘야 합니다. 그렇다면 이중연결리스트(DoubleLinkedList)에서 인덱스를 통한 데이터 삽입은 어떻게 이루어질까요? 우선 우리가 삽일할 위치의 인덱.. 더보기
이중연결리스트 (Double Linked List) 사용법 (ft. 데이터 검색하기) 이중연결리스트 (Double Linked List) 사용법 (ft. 데이터 검색하기) 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 리스트 자료구조 중에서도 특히 이중 연결 리스트(Double Linked List)의 구현 및 사용방법과 데이터 접근법에 대해 같이 알아보겠습니다. ※ 혹시 아직 이중연결리스트에 대해서 잘 모르시는 분은 이전 포스팅을 참고해주세요 :) 그림으로 쉽게 이해하는 이중 연결 리스트의 특징과 장단점 그림으로 쉽게 이해하는 이중 연결 리스트의 특징과 장단점 그림으로 쉽게 이해하는 이중 연결 리스트의 특징과 장단점 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 리스트 자료구조 중에서도 특히 이중 연결 리스트(Double Linked List)에 대해서 같이 알아 rosweet-ai.tis.. 더보기
그림으로 쉽게 이해하는 이중 연결 리스트의 특징과 장단점 그림으로 쉽게 이해하는 이중 연결 리스트의 특징과 장단점 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 리스트 자료구조 중에서도 특히 이중 연결 리스트(Double Linked List)에 대해서 같이 알아보겠습니다. ※혹시 아직 연결리스트, 배열리스트에 대해서 헷갈리시는 분은 이전 포스팅을 참고해주세요 :) Arraylist(어레이리스트) 핵중요한 특징 3가지!! Arraylist(어레이리스트) 핵중요한 특징 3가지!! Arraylist(어레이리스트) 핵중요한 특징 3가지!! 안녕하세요. 로스윗의 코딩캠프입니다. 오늘부터는 지난 시간에서 말씀드린대로 본격적으로 자료구조 포스팅을 시작하겠습니다. 가장 쉽고 만만한 rosweet-ai.tistory.com 링크드리스트(LinkedList)의 개념과 연산 (f.. 더보기
Arraylist(어레이리스트) 핵중요한 특징 3가지!! Arraylist(어레이리스트) 핵중요한 특징 3가지!! 안녕하세요. 로스윗의 코딩캠프입니다. 오늘부터는 지난 시간에서 말씀드린대로 본격적으로 자료구조 포스팅을 시작하겠습니다. 가장 쉽고 만만한 어레이리스트(arraylist)부터 출발해볼까요~? ㅎㅎ - List(리스트)란? 리스트(List)는 선형적인 자료구조로 데이터를 일렬로 늘여놓은 형태를 가진 자료구조를 얘기합니다. 일렬로 늘여 놓았기 때문에 데이터간에 순서가 있다는 점이 List의 특징입니다. 리스트(list)는 크게 어레이리스트(ArrayList)와 링크드리스트(LinkedList)로 구분을 할 수 있고 그리고 LinkedList는 데이터간의 연결 방식에 따라서 다시 Single Linked List와 Double Linked List로 구분.. 더보기
그림으로 쉽게 이해하는 빅오표기법 시간복잡도 그림으로 쉽게 이해하는 빅오표기법 시간복잡도 안녕하세요. 로스윗의 코딩캠프에 오신 것을 환영합니다. 오늘은 지난 시간에 이어 코딩 필수 개념인 시간복잡도에 대해서 알아보겠습니다. 거두절미 하고 바로 레츠고~! - 시간복잡도란 무엇인가? --> 알고리즘이 문제를 해결하기 위한 시간(연산)의 횟수를 말합니다. 먼저 가장 짧은 시간이 걸리는 O(1)부터 설명을 드리자면은, 입력 데이터의 크기와 상관없이 항상 일정한 시간이 걸리는 알고리즘을 의미합니다. 배열을 배우셨을 때 기억하실지 모르겠지만 배열에 접근할 때는 Random Access로 접근한다는 것을 아마 배우셨을 겁니다. 이렇게 접근을 하게 되면 어느 위치에 접근을 하던지간에 항상 동일한 시간에 접근 하는 것이 가능해집니다. 그래서 이 배열에 접근 할때 .. 더보기

728x90
반응형