전체 글
[Python] 딕셔너리 : .keys(), .values(), .items() 메서드 사용법
.keys() : 딕셔너리의 key만 선별해주는 함수 map = { "자료구조" : 2, "알고리즘" : 3, "컴퓨터구조" : 2, "운영체제" : 3 } print(map.keys()) ==> dict_keys(['자료구조', '알고리즘', '컴퓨터구조', '운영체제']) dict_keys([~~~]) .values() : 딕셔너리의 value만 선별해주는 함수 map = { "자료구조" : 2, "알고리즘" : 3, "컴퓨터구조" : 2, "운영체제" : 3 } print(map.values()) ==> dict_values([2, 3, 2, 3]) dict_values([~~~]) .items() : 딕셔너리의 key와 value를 하나의 튜플로 묶어주는 함수 map = { "자료구조" : 2, ..
[자료구조] 연결리스트(2) : C언어
1. 원형 연결 리스트 정의 : 마지막 노드의 링크가 첫 번째 노드를 가리키는 리스트 => 한 노드에서 다른 모든 노드로의 접근이 가능 => 원형이기 때문에 다른 노드들을 거쳐서 결국 자기자신으로 되돌아 올 수 있음 => 삭제나 삽입 시에는 항상 선행 노드를 가리키는 포인터가 필요 변형된 원형 연결 리스트 => 마지막 노드는 헤드 포인터인 헤드가 가리키고 첫번째 노드는 화살표 연산자를 이용해서 head -> link로 가리킴 => 헤드포인터가 마지막 노드를 가리키도록 구성하면 리스트의 처음이나 마지막에 노드를 삽입하는 연산이 단순 연결 리스트에 비해 용이하다. 1. 원형 연결 리스트의 처음에 삽입 ListNode* insert_first(ListNode* head, element data) { ListN..
[자료구조] 연결리스트(1) : C언어
리스트(list) 자료를 정리하는 방법 중에 하나 리스트의 기본 연산 1. 삽입 연산 리스트에 새로운 항목을 추가 2. 삭제 연산 리스트에서 항목을 삭제 3. 탐색 연산 리스트에서 특정한 항목을 검색 리스트의 구현 방법 리스트는 배열과 연결리스트를 이용하여 구현 가능 장점 단점 배열 간단하게 구현가능, 크기가 고정 1. 데이터를 중간에 삽입할 경우에 데이터들이 이동해야함 2. 데이터를 삽입할 경우 공간이 부족하면 더 큰 배열을 만들어서 데이터를 기존 복사하고 새로운 데이터를 추가 => cpu시간을 낭비시킴 연결 리스트 1. 중간에 쉽게 삽입/삭제 가능 2. 리스트의 크기가 제한되지 않음 임의의 항목에 접근할 경우 배열보다 시간이 오래 걸림 구조체로 정의한 리스트 #define MAX_LIST_SIZE 1..
[카카오] 42888 python : 오픈채팅방
https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 문자열 파싱을 요구하는 카카오의 코딩테스트 기출문제입니다. 주어진 테스트 케이스 ["Enter uid1234 Muzi", "Enter uid4567 Prodo","Leave uid1234", "Enter uid1234 Prodo","Change uid4567 Ryan"] 이것을 주고 ["Prodo님이 들어왔습니다.", "Ryan님이 들어왔습니다.", "Prodo..
[백준] 2869 python(파이썬) : 달팽이는 올라가고 싶다 - 상세해설
https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B = v: return y else: x -= b print(func(a, b, v)) 시간제한이 1초였다면 정답률이 이렇게 낮지도 않았을 거라 생각합니다. 하지만, 0.15초 안에 풀어야 하는 문제이기에..
[Python] 파이썬의 삼항연산자
1. 삼항 연산자란? 조건에 일치하는지 아닌지에 따라 값을 다르게 설정하는 연산자 기본적인 모델은 다음과 같습니다. int more = (a > b) ? a : b a > b 이면 a 그렇지 않으면 b를 변수 more에 저장하는 구조입니다. c / c++와 같은 언어에서 이러한 구조를 가지고 있습니다. 괄호 안에 조건문을 넣고?(물음표)를 이용해서 조건문과 결과 문을 구분하는 것이 특징입니다. 2. 파이썬에서의 삼항 연산자 파이썬에서는 삼항 연산자를 위의 예시와 다르게 사용하고 있습니다. 기본 모델은 다음과 같습니다. true_value if condition else false_value 해석하면 if문에서 condition을 만족하면 true_value를 그렇지 않으면 false_value를 결..