전체 글

Hello World
    반응형
기록/크래프톤 정글

TIL - 해시 테이블

문제파이썬의 딕셔너리는 내부적으로 해시 테이블로 구현됨. 문제풀이def manage_grades(students): # 평균 검사 average = sum(students.values()) / len(students) # 최대값 구하기 top_student = max(students, key=students.get) top_score = max(students.values()) return average, top_student, top_scoredef find_student_score(students, name): # name key 값으로 value 반환 return students.get(name) 파이썬 딕셔너리는 따로 정리했다. 파이썬 딕셔너리 문법을..

Back End/Python

Python 에서 딕셔너리 dict 구현하기

딕셔너리 자료형딕셔너리는 말 그대로 '사전' 이라는 뜻이다. 딕셔너리는 Key 와 Value 를 한쌍으로 가지는 자료형이다. 리스트나 튜플처럼 순차적으로 해당 요솟값을 구하지 않고 Key 를 통해 Value를 얻는다. 아래는 딕셔너리의 기본 모습이다.{Key1: Value1, Key2: Value2, Key3: Value3, ...} 딕셔너리의 특징순서 유지Key 제약 (불변 타입만 가능)중복 Key 불가 딕셔너리의 메서드dperson.keys() # 모든 키 반환person.values() # 모든 값 반환person.items() # (key, value) 튜플 리스트 반환person.values() # dict_values([85, 92,78])sum(person.v..

기록/크래프톤 정글

TIL - Linked List 연결 리스트

문제- 단순 연결 리스트(Singly Linked List)를 구현합니다.- 노드는 값(data)과 다음 노드를 가리키는 포인터(next)를 가집니다. 문제풀이class Node: # Node 구성 = data + next def __init__(self, data): self.data = data self.next = Noneclass LinkedList: def __init__(self): self.head = None # 리스트 끝에 노드 추가 def append(self, data): # 새 노드 생성 new_node = Node(data) # 첫 노드 = head if self.head is None: ..

Back End/Python

Python 에서 Queue 구현하기

Queue 란?큐는 줄을 선 순서대로 처리하는 방식이다. 먼저 들어온 것을 먼저 처리하는 선입선출 (FIFO) 방식으로 동작한다. 큐에서는 front 가 가장 앞의 노드이며, 마지막에 들어간 노드를 rear 또는 back이라고 한다. Queue 클래스 만들기파이썬으로 큐는 list 나 queue 라이브러리를 사용하는 방법이 있다. List 로 구현queue = []queue.append(1) # 삽입 뒤에 추가queue.append(2)queue.append(3)front = queue.pop(0) # 앞에서 꺼내기pop(0) 이 앞의 원소를 빼면서 나머지를 전부 한칸씩 당겨야 한다. 시간복잡도는 O(n). 큐가 커지면 느려진다. Collections.dequefrom collection..

기록/크래프톤 정글

TIL - 큐, 프린터 대기열

문제- 큐(Queue)를 사용하여 프린터 작업을 순서대로 처리합니다.- FIFO (First In First Out) 구조를 활용합니다. 문제풀이from collections import dequedef process_print_queue(jobs): # deque로 큐 생성 queue = deque(jobs) processed = [] ## 큐에서 작업 꺼내기 ## 작업 처리 (출력 및 리스트에 추가) while queue: val = queue[0] print("처리: " + val) processed.append(val) queue.remove(val) return processed 큐의 개념은..

    반응형
Lar
개발지식 저장소