본문 바로가기
728x90
반응형

분류 전체보기119

[자료구조/알고리즘] - Queue/Deque 큐는 FIFO, First-In-First-Out 선입선출로 처리됩니다. 지난번에 스택을 정리할 때 테니스공, 셔틀콕을 넣는 통에 스택을 비유 했었는데, 큐의 경우에는 다른 예시 보다 책 예시가 좋은 거 같아서 적어본다. 우리가 흔히 식당에 들어가기 위해서 대기줄을 서는 경우가 있는데 그 때 제일 먼저 대기줄에 선 손님분들 부터 입장을 하게 된다. 이런 식으로 작동을 하는게 큐라고 보면 된다. 스택의 거의 모든 연산을 파이썬에서 지원해 주듯이 리스트는 큐의 모든 연산을 지원해줍니다. 주의할 점은 리스트는 동적 배열로 구현되어져 있어서 큐의 연산을 수행하기에는 효율적이지 않아, Deque라는 별도의 자료형을 사용해야 좋은 성능을 낼 수 있다. 어제오늘 큐 문제를 최대한 많이 풀려고 했는데 파이썬으로 푼 문.. 2023. 5. 13.
WebOS Overview 여름에 학교에서 진행하는 인도 인턴십을 참여하게 되면서, 가기 전에 처음으로 WebOS에 관련된 세미나를 듣게 되었습니다. 들으면서 간단하게 설명해주셨던 내용들을 정리 해봤습니다. WebOS란? 간단하게 설명을 하면 LG 스마트 티비 같은 기기에 올라가는 OS가 예시가 될 수 있습니다. 안드로이드, IOS 같은 운영체제로 다른 운영체제와는 다른 버스시스템을 사용한다고 합니다. 리눅스에서 사용하는 Deep bus라는 시스템을 조금 더 발전 시킨 Luna Bus라는 것을 사용한다고 합니다. 주요한 WebOS의 특징으로는 멀티태스킹과 패스트 스위칭을 지원합니다. 그리고 단순하고 직관적인 UX를 추구함과 동시에 웹 중심으로 되어 있어서 확장이 가능한 구조로 이뤄져 있습니다. OS를 구성하는 데 있어, 오픈소스 .. 2023. 5. 11.
[자료구조/알고리즘] - 스택 자료구조를 배우게 되면 가장 많이 보게 되는 자료형이 아닐까 생각이 듭니다. 운영체제에서도 나오고 다른 CS 지식을 배우는 과정에서도 자주 나오는 자료형이라고 생각이 됩니다. 다음 글로 Queue에 대한 부분도 작성하겠지만 스택의 경우에는 Last-In-First-Out, LIFO(후입선출)에 해당 합니다. 1학년 때 자료구조를 들으면서 들었던 좋은 예시로는 테니스공이나 배드민턴 공을 넣는 통이 생각이 납니다. 위의 그림과 같이 제일 마지막에 넣은 셔틀콕을 우리가 셔틀콕을 사용하기 위해서 제일 먼저 꺼내게 됩니다. 파이썬에서는 스택 자료형을 별도로 제공하지는 않지만 리스트를 통해서 거의 대부분의 연산을 사용할 수 있습니다. 예를 들어서 pop()과 같은 기능을 제공받아서 일일히 스택에서 필요한 기능들을 .. 2023. 5. 11.
[자료구조/알고리즘] - 문자열 문자열 조작이란 문자열을 변경하거나 분리하는 등의 여러 과정을 말합니다. 언어에 따라서 문자형이 다로 없는 경우에는 비교적 조작이 까다로운 편이지만, 대부분의 언어에서는 별도의 문자열 자료형과 문자열 조작에 대한 기능을 제공해주기 때문에 언어에서 기능들을 잘 활용하면 좋습니다. 백준이나 리트코드 문제를 푼지 한참 되서 그냥 기억나는 문자열 문제들의 특징은 항상 전처리(?)를 잘해주면 문제 풀기가 편했다는 점, 그리고 파이썬으로 풀 때 정답 출력을 잘 맞춰줬어야 되는 점 정도 였던 것 같습니다. 문자열 관련 문제를 좀 찾아서 풀었는데, 문제를 풀면서 실수했던 부분이나 자주 사용하는 부분을 정리해봤습니다. 리스트 모아서 문자열로 출력해주기 str = ''.join(arr) # 숫자는 처리를 더 해줘야 함. .. 2023. 5. 10.
[자료구조/알고리즘] - 배열/array 자료구조는 크게 메모리 공간 기반의 연속 방식과 포인터 기반의 연결 방식으로 나뉘게 되고, 배열은 대표적인 연속 방식의 자료형이다. 연결 방식의 대표적인 자료형은 연결리스트를 생각하면 된다. C언어를 기준으로, 배열은 크기를 지정하고 해당 크기 만큼의 연속된 메모리 공간을 할당 하는 자료형이라고 보면 된다. 이렇게 크기를 정하고 생성한 배열은 크기를 변경하는 것이 불가능 하다 예를 들어서 int arr[5] = {4, 7, , 29, 0, 1}로 배열을 선언해주게 되면 정수형 int로 선언을 해주고 총 5칸을 배정해줬다고 보면 된다. 배열의 장점은 어느 위치에나 O(1)로 조회가 가능하다는 점. 주소를 기준으로 해당 메모리에 배치되어 있는 값을 바로 조회가 가능하다. 위에서 얘기하는 배열의 경우에는 고정.. 2023. 5. 8.
스터디 1일차 후기 지인들과 CS(네트워크, 운영체제, 자료구조)에다가 FE 파트에 대해서 스터디를 시작했습니다. 생각보다 지난주에 여러 일정이 많았어서 집중을 온전히 많이 못했었는데, 스터디를 하니까 그게 확실히 들어났던...것 같다.(열심히 봐야 할듯) 그래서 간단하게 스터디 했던 내용들을 정리해보려고 한다. 물론 각각 따로 정리를 해야 될 것 같지만서도... 운영체제 Q-1: 운영체제란? A: 하드웨어 위에서 사용자와 연결해주는 인터페이스 역할을 해주는 소프트웨어, 사용자가 편하게 사용하기 위한 환경을 제공해주는 동시에 효율적으로 컴퓨터 리소스를 활용할 수 있도록 도와준다. 그리고 메모리 관리와 파일 시스템 관리를 담당하고 있다. Q-2: CPU 스케줄링? A: 현대의 운영체제는 time sharing 방식으로 운영되.. 2023. 5. 8.
728x90
반응형