이카's
반응형
article thumbnail
자료구조 - Queue(feat. Java, Python)
SW/자료구조 2023. 6. 1. 03:22

큐(Queue)란? 큐는 배열을 기반으로 만든 자료구조이다. 가장 먼저 넣은 요소를 가장 먼저 꺼낼 수 있다는 것이 특징이다. 예시로 터널에 들어간 차량, 음식점 줄서기 등이 있다. 개인적으로 자료구조에서 인간적으로 합당하다고 생각하는 구조이다... 들어가기에 앞서 큐에서 자주 사용하는 용어 2개를 소개한다. Enqueue : 큐에 요소 넣는 기능 Dequeue : 큐에 요소 꺼내는 기능 특징 몇가지 특징을 짧게 알아보자 FIFO : First input First out 의 약자로 선입선출 이라고 많이 말한다. 큐의 가장 큰 특징이자 중요한 개념이다. 큐는 꼬리 쪽으로만 요소가 들어가고 헤드 쪽으로만 요소가 나가게 된다. 컴퓨터 버퍼에서 주로 사용한다. Python Queue 파이썬에서는 큐는 내부구현..

article thumbnail
자료구조 - 배열 (feat. Java, Python), 자매품 - Java Collection ArrayList
SW/자료구조 2023. 6. 1. 02:30

배열이란? 배열을 왜 쓸까? 같은 종류의 데이터를 관리하기 하기 위해서 같은 종류의 데이터를 순차적으로 저장 대전제는 데이터를 쉽게 관리하는 목적이다. 그것을 한 묶음으로 관리하는게 효율적이다. 근데 이걸 또 순차적으로 있다면? 한눈에 봐도 데이터를 다루기가 쉬울 것이다. 장점 - Index 배열의 가장 큰 장점은 Index라고 할 수 있다. 배열는 공간에 각각의 element 마다 각각의 index가 생긴다. (각각각각) 각 요소에 번호가 생기면 데이터 안에 하나의 값만 가져올 때 굉장히 편해진다. 또한 값을 찾을 때 소모되는 비용은 index로 인해 시간복잡도 O(1)을 가진다. 단점 - 배열의 크기설정 & 추가/삭제 배열의 가장 큰 단점 데이터를 삭제와 추가 하는 부분에서 발생한다. 배열은 크기를 ..

[Algorithm]프로그래머스 체육복 #python #그리디
알고리즘 문제풀이 2021. 5. 17. 22:53

처음 문제 풀때는 어떻게 풀어야 할지 막막했다. 어떻게 순서를 정하고 풀어야 하는데 어디서 부터 손 댈지가 막막했다. 그래도 순서 적어가면서 풀어봤는데, 나름 풀만 했다! 또한 새로운 걸 배워서 적어 본다. lost, reserve = list(set(lost) - set(reserve)), list(set(reserve) - set(lost)) 차집합 개념이라고 생각하면 된다. a - b라고 생각 했을때, a에서 b를 빼고 나머지 a가 담긴다. 즉 앞 set() 기준이라는 소리! 이 개념만 알면 코드 몇줄은 쉽게 줄여진다! 또한, list.remove(변수) 를 쓰니까 쉬웠다... list에 담겨져 있는 것 하나를 어떻게 지울까 하다가 remove를 쓰면 된다는 말에한번 써봤는데, 정말 쉽게 풀었다....

[Algorithm] 자릿수의 합 #python
알고리즘 문제풀이 2021. 5. 11. 22:09

문제 N개의 자연수가 입력되면 자연수의 자릿수의 합을 구하고, 그 합이 최대인 자연수 출력 자릿수의 합 구하는 함수 만들기 코드 구현 생각 처음에는 잘 이해 안됐지만 쉽게 생각하니 쉬웠다. 111111 이 주어진다면 1을 6번 더하면 된다는 말 즉 return 값은 6 999 라면 각각 자리의 숫자를 합하는 것 PYTHON # 문자열 방법 def solution(x): total = [] sum = 0 for i in x: for j in str(i): sum += int(j) total.append(sum) sum = 0 max_num = 0 for i in total: if i > max_num: max_num = i answer = x[total.index(i)] return answer 이 방법이..

[#2]Python 사칙연산, 연산자
Language/Python 2020. 4. 6. 18:06

1. 연산자 파이썬에서는 연산자의 종류는 여러가지가 있지만 오늘은 가장 많이 사용하는 몇가지만 살펴 보려고 합니다. 1. 비교 연산자 파이썬의 피교 연산자는 True 혹은 False를 사용하기 위해 가장많이 사용합니다. 1 2 3 4 5 if a == 1: print("a가 1임") if a != 1: print("a가 1이 아님") 위에 간단한 비교 연산자를 보자면 파이썬에서는 같음을 의미할 때 "="을 사용하지 않고 "=="을 사용해 줍니다. "=="의 해석은 a가 1일때만 print()가 실행이 되는것 입니다. 또한 "!="은 같지 않을때를 의미하는 것으로 a가 1이 아닐때, 예를들어 2,3,4,5,6, 등등 여러 숫자일때 그 다음 print()문이 실행됩니다. 2. 할당 연산자 파이썬에서는 "="..

article thumbnail
[#1]Python 입문!
Language/Python 2020. 3. 12. 20:38

신소재 공학과 전공을 하였으나, 소프트웨어 쪽에 관심이 생겨서 공부하는 블로그 입니다. 개인적으로 공부를 정리하기 위해 만들었으며, 나아가 저의 포토폴리오로 쓸 수 있도록 발전 시킬 것입니다. 오늘은 Python을 설치하고 가장 기초인 입, 출력을 할겁니다. 파이썬 설치는 Google에 입력하면 바로 나올정도로 간단합니다. 그냥 검색하면 나올정도로 쉽게 때문에 따로 언급하지 않겠습니다. 파이썬을 설치하면 기본적으로 IDLE이 자동으로 설치됩니다. IDLE은 가장 기본적인 라이브러리로 가장 쉽게 사용할 수 있습니다. (하지만 저는 개인적으로 python라이브러리 중 하나인 pycharm을 사용합니다.) 입출력을 들어가기 앞서 IDLE에서는 기본적으로 출력 문법인 print()가 자동으로 되어있습니다. 따라..

반응형