본문 바로가기

set3

C++ 자료구조 - Set Set - Map과 동일하나 Key 값만 이용한다. 완전 이진트리. 우리가 알고 있는 그 이진탐색트리랑 작동구조 똑같다. - Key 값은 데이터를 뜻함. - 이진탐색트리의 장점을 그대로 가지고 오므로, 정렬해야할때, 빨리 데이터를 찾아야 할때 좋다. 1. 사용 - #include - set [변수이름]; 2. 생성자와 연산자 - set s; - 기본 선언 방법 - set s(pred); - pred를 통해 정렬기준(오름, 내림) - set s2(s1); - s1을 복사한 s2를 생성 3. 멤버 함수 - s.begin(); - 맨 첫 번째 원소를 가리키는 iter - s.end(); - 맨 마지막 원소를 가리키는 iter - s.rbegin(); - 역으로 처음을 가키리는 iter - s.rend(); -.. 2020. 6. 21.
C++ 자료구조 정리 1. LIST - 더블 링크드 리스트로 구현되어 있다. - 더블 링크드 리스트의 장점을 그대로 가져오며 중간에 삽입/삭제가 빠르다. - 하지만 특정 원소에 접근하려면 선형탐색을 해야한다. 상호 포인터 정보를 가지고 있기 때문에 메모리 사용비율이 높다. 2. Stack 3. Queue 4. Vector - 배열인데, 동적으로 크기를 확장 또는 축소가 가능하게 되어있는 자료구조(크기조절 시 오버헤드 큼) - 역시 배열의 특징을 그대로 가져온다. 데이터의 위치를 알고 있으면 랜덤 엑세스가 가능하다. - 하지만 중간에 데이터를 삽입 또는 제거하려면 땡기거나 밀어야 되는 단점도 그대로 가지고 온다. - 하지만 끝부분에 삽입할 땐 빠름 5. Deque(덱) - LIFO, FIFO 두 가지 방식을 다 사용할 수 있는.. 2020. 6. 19.
Python(파이썬) - Collection 리스트(list) - [ ] a = [1,2,3,4,5] a[1] : 2 a[-1] : 5 역방향 탐색이 가능 len(a) 리스트 개수 a.append(6) list 뒤에 추가 a.insert(1,10) 1번 Index에 10 추가 a.remove(2) 2값 제거 del(a[2]) 2번 Index 값 삭제 a.reverse() 순서 반대로 a.sort() 정렬 a.sort(reverse=True) 내림차순 정렬 a.pop() 하나 꺼내기(제거) a.extend(b) a뒤에 b 추가 aa = a.copy() list 복사 a.clear() 리스트 비우기 튜플(tuple) - ( ) 튜플은 리스트와 달리 값을 바꿀수 없다. a = (1, 3, 5, 7, 9) b = (10, 20, 30, 40) a.inde.. 2020. 4. 6.