일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 웹 기초
- 한국외대
- FIFO
- 대외활동
- 수파자
- CSS
- 한국대학생IT경영학회
- IT
- 파이썬
- 시간 복잡도
- 프로그래밍
- 큐
- HTML
- 스택
- 코뮤니티
- 선형 자료 구조
- 자료구조
- 코딩
- 모각코
- 동적 배열
- 알고리즘
- LIFO
- 코딩좀알려주라
- 서포터즈
- 리스트
- 한방향 연결 리스트
- 양방향 연결 리스트
- 대학생
- 연결 리스트
- O(1)
- Today
- Total
목록분류 전체보기 (57)
대학생 쩡딱구리
글 제목 그대로 오늘은 이번 학기 성적을 갖고 왔다. 계산해보니까 계절이 A+이 나오면 딱 4던데 평타는 친 듯...? 과목별로 썰을 풀어보겠다. 우선 1전공인 노어부터! 1. 1전공: 노어과 러시아어말하기심화(2) 최종 성적: A+ 노어과 마지막 전공필수 과목이다. 교수님께서는 틀리는 것과는 상관없이 하나하나 말을 하는 것 자체를 상당히 중요시하시는 느낌이다. 수업 때 말을 하려는 노력을 보여주는 것이 중요할 듯. 교수님은 정말정말 좋으시고 회화수업이라는 취지에도 잘 맞는 수업이라 아주 만족하며 들었다. 중간고사: 필기고사+말하기 / 필기고사는 문법 위주, 말하기는 주제를 뽑은 후 교수님과 질의응답 형식 기말고사: 말하기 100% / 주제별 20문장 이상, 주제는 추첨한 후 개인별로 10분씩 시간을 정..
2020년의 마지막 날, 가을도 아닌 춥디 추운 겨울에 정말 오랜만에 티스토리에 이 글을 올리게 되었다. 읽은 책이니만큼 남겨두면 좋을 것 같아서! 특히 이 작품은 내가 러시아문학텍스트 분석 수업 기말고사 대체로 낸 번역 작품이라 기록을 하지 않으면 후회가 될 것 같았다. 이반 부닌은 러시아에서 유명한 작가인데 사실 나는 이 작품을 접하면서 처음 알게 된 작가이다. 러시아 최초 노벨 문학상 수상 작가라고 한다. 오늘은 그 부닌의 단편소설인 추운 가을에 대해 정리해보았다. 1. 책 제목의 의미: 추운 가을 이 얼마나 추운 가을이란 말인가! 추운 가을은 '나'와 '나'의 약혼자가 함께할 때의 시간적 배경이자 작중에서 다루어지는 시의 주제이기도 하다. 시의 내용은 이렇다. 내가 번역한 것이라 내용은 매끄럽지 ..
1-2. 시간 복잡도 분석 1. 알고리즘 분석 0. 알고리즘과 자료 구조 1. 알고리즘이란? "유튜브 알고리즘이 나를 꽤 괜찮은 곳으로 데리고 왔다." 2PM의 '우리 집' 유튜브 영상에 달린 베스트 댓글 중 하나다. 이 예시와 같 jjeongttakgoori.tistory.com 삽입 정렬을 처음 다룬 게시글이다. 안 봐도 무방. 1. 포지션 리스트로 삽입 정렬 문제 풀어보기 워크(walk): 마커부터 첫 번째 노드 방향으로 이동한 것. 워크 앞 노드와 피봇을 비교한다. 피봇(pivot): 마커의 다음 노드로, 정렬해야 할 대상 마커(marker): 정렬된 리스트의 가장 오른쪽 노드 2. insertion_sort def insertion_sort(L): """Sort PositionalList of ..
4-4. 양방향 연결 리스트 한방향 연결 리스트는 연결 구조가 비대칭이라 임의의 노드의 삭제가 아주 비효율적이다. 즉, 아래의 단점을 갖는다. 해당 노드의 레퍼런스를 알아도 삭제에 O(n)의 시간 복잡도를 갖는다. 삭제 jjeongttakgoori.tistory.com 1. 연결 리스트의 위치 식별 방법 연결 리스트에서 인덱스로 위치를 식별하면 좋을까? - 좋지 않다. 연결 리스트를 인덱스로 접근하려면 반복적으로 탐색해야 하므로 효율적으로 처리할 수 없으며, 연결 리스트가 바뀔 때마다 인덱스가 달라질 수 있다. 즉, 비효율적이다. 연결 리스트에서 직접 노드로 위치를 식별하게 하면 어떨까? - 노드는 내부 클래스로 은닉시켜 둔 상태이므로 외부로 노출하는 것은 객체 지향 설계 사상에 위배된다. 그렇다면 왜 ..
4-4. 양방향 연결 리스트 한방향 연결 리스트는 연결 구조가 비대칭이라 임의의 노드의 삭제가 아주 비효율적이다. 즉, 아래의 단점을 갖는다. 해당 노드의 레퍼런스를 알아도 삭제에 O(n)의 시간 복잡도를 갖는다. 삭제 jjeongttakgoori.tistory.com 3-3 덱 덱 = 스택 + 큐이다! 스택과 큐를 잠깐 복습하고 보는 것을 추천한다. 3-1. 스택 1. 스택이란? 스택(Stack)이란 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 자료 구조이다. 스택은 LIFO(Last In First O jjeongttakgoori.tistory.com 양방향 연결 리스트로 덱을 구현하면 모든 연산이 O(1) 시간 복잡도를 갖는다. 1. LinkedDeque 클래스 from .doubly_linke..
한방향 연결 리스트는 연결 구조가 비대칭이라 임의의 노드의 삭제가 아주 비효율적이다. 즉, 아래의 단점을 갖는다. 해당 노드의 레퍼런스를 알아도 삭제에 O(n)의 시간 복잡도를 갖는다. 삭제를 하려면 삭제할 노드뿐만 아니라 이전 노드의 레퍼런스가 필요한데, 항상 head부터 해당 노드의 이전 노드까지 이동하는 시간이 필요하다. 연결 리스트가 대칭성을 갖도록 이전 노드와 다음 노드의 레퍼런스를 갖도록 해보자. 1. 양방향 연결 리스트 양방향 연결 리스트(Doubly Linked List)는 노드들이 양방향으로 연결된 리스트로, 각 노드들은 객체(element), 이전 노드(prev), 다음 노드(next)의 레퍼런스를 저장한다. 이때 링크를 따라 특정 노드의 데이터를 접근하고 수정한다. 양방향 연결 리스트..
연결 리스트에 대한 내용은 여기에 있다. 4-1. 한방향 연결 리스트 그동안 동적 배열과 동적 배열을 기반으로 한 자료구조를 다루었다. 하지만 동적 배열엔 아래와 같은 단점이 있다. 동적 배열의 길이가 저장하는 요소의 수보다 길다. 즉 메모리 낭비가 있다. � jjeongttakgoori.tistory.com 1. 원형 연결 리스트 원형 연결 리스트(Circular Linked List)는 노드들이 원형으로 연결된 리스트이다. 위 그림과 같이 한방향 연결 리스트의 tail의 next를 head로 연결하면 원형 연결 리스트가 된다. 아래 그림도 보자. 이 그림을 통해 볼 수 있는 원형 연결 리스트의 특징은 다음과 같다. 리스트의 시작과 끝 개념이 없다. 노드 간에 순서 관계를 부여하기 위해 특정 노드의 레..
한방향 연결 리스트 내용 참고! 4-1. 한방향 연결 리스트 그동안 동적 배열과 동적 배열을 기반으로 한 자료구조를 다루었다. 하지만 동적 배열엔 아래와 같은 단점이 있다. 동적 배열의 길이가 저장하는 요소의 수보다 길다. 즉 메모리 낭비가 있다. � jjeongttakgoori.tistory.com 1. 스택 구현 스택이 뭔지 기억이 안 난다면 이 글을 참고하면 좋을 것 같다. 3-1. 스택 1. 스택이란? 스택(Stack)이란 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 자료 구조이다. 스택은 LIFO(Last In First Out) 형태의 자료구조로, 가장 최근에 저장된 값 다음에 자료가 저장되고(push), jjeongttakgoori.tistory.com 가장 먼저 들어간 것이 가장 나중에..