전체 글102 [TIL]내일배움캠프 - CS 프로세스 '실행 중인 프로그램'으로 보조기억장치에서 메모리로 이동되어 프로세스로 실행된다. -포그라운 프로세스 : 사용자가 볼 수 있는 공간에서 실행되는 프로세스 -백그라운드 프로세스 : 사용자가 직접 상호작용이 가능한 백그라운드 프로세스 (그저 상호작용 없이 정해진 일만 하는 데몬, 서비스) 모든 프로세스는 실행되기 위해 CPU가 필요하고 CPU는 한정된 자원이 있어 OS가 관리 해준다. 생성상태 : 준비상태 실행상태 대기상태 : 프로세르가 종료상태 : 프로세스 종료 2024. 3. 22. [TIL]내일배움캠프 - CPU와 메모리 프로그램 언어만 공부하면 되지 왜 컴퓨터의 구조를 알아야 할까? 그 이유는 그냥 코드만 작성하는 개발자가 아닌 컴퓨터의 구조를 통해 나의 코드가 어떻게 수행되는지를 알고 문제가 발생 시 해결방안을 찾을 수 있으며 성능, 비용, 용량을 고려해 코드를 작성하는 개발자가 되기 위해서다. CPU 메모리에 저장된 명령을 읽고 수행하는 역할을 하고 ALU, 제어장치, 레지스터로 구성되어 있다. - ALU는 계산기 역할을 하며 산술 논리 연산장치이다. - 레지스터는 CPU내부의 저장장치이다 - 제어장치는 멸령을 호출, 해독하고 내부버스를 연결되어 있다. 메모리 현제 실행하는 프로그램의 명령어와 데이터를 저장하는 곳이며 레지스터, 캐시(SRAM), 메인 메모리(DRAM), 하드 디스크가 있다. - 레지스터는 CPU내부.. 2024. 3. 21. [TIL] 내일배움캠프 - 알고리즘 문제 / 첫 번째로 나오는 음수 오늘은 여러 알고리즘 문제를 풀다. 발생한 문제 점을 정리하려고 한다. 문제설명 정수 리스트 num_list가 주어질 때, 첫 번째로 나오는 음수의 인덱스를 return하도록 solution 함수를 완성해주세요. 음수가 없다면 -1을 return합니다. 제한사항 5 ≤ num_list의 길이 ≤ 100 -10 ≤ num_list의 원소 ≤ 100 입출력 예 num_listresult [12, 4, 15, 46, 38, -2, 15]5 [13, 22, 53, 24, 15, 6]-1 입출력 예 설명 입출력 예 #1 5번 인덱스에서 음수가 처음 등장하므로 5를 return합니다. 입출력 예 #2 음수가 없으므로 -1을 return합니다. 구현해야 하는 것 1. 정수형의 num_list안의 원소를 을 확인한다... 2024. 3. 20. [TIL]24.03.19 내일 배움캠프 - CPU, 메모리 CS의 강의를 들으며 강의의 내용을 정리하려고 한다. 이론적인 부분이라 살짝(?) 지루 할 수도 있지만 내용을 이해하고 우리가 배우는 언어가 어떤 식으로 처리되는 원리를 이해한다면 내용이 더욱 재미있게 와닿을 거 같다. CPU CPU는 central processing unit의 약자로 컴퓨터의 뇌를 담당한다. 주로 프로그램 기능을 제어하고 연산하는 기능을 하며 CPU안에서도 다양한 기능이 있다. - ALU : Arithmetic Logic unit의 약자로 사람의 우뇌 역할을 하며 비교, 판단, 연산을 담당한다. - CU : Control Unit의 약자로 사람의 좌뇌 역할을 하며 주로 주기억 장치에 저장 된 내용을 불러와 내용 해독하는 제어부와 컴퓨터를 동작하게 하고 주기억 장치와 입출 장치, 통신 .. 2024. 3. 19. 2진법, 10진법, 16진법 python문제를 풀다 2진법, 10진법으로 변형하는 문제가 종종 나온다. 2진법, 10진법, 16진법에 관해 확실하게 알고 알고리즘 문제를 풀기 위해 기록한다. 10진법 우리가 평소에 사용하는 숫자 0,1,2,3 ~ 9까지 숫자로 9를 넘어가면 10으로 표기하는 방식이다. 2진법 2진법은 컴퓨터에서 1과 0으로만 표기하는 방법으로 0 = 0 1 = 1 2 = 10 3 = 11 4 = 100 5 = 101 6 = 110 7 = 111 8 = 1000 9 = 1001 10 = 1010 이런 식으로 2가 되면 자릿수가 증가하는 방식 이다. 그런데 숫자가 커지지면 1과 0으로 이루어지다 보니 너무 긴 문제가 있다. 16진법 2진법을 보안하기 위해 컴퓨터에서 많이 사용하는데 숫자 0 ~ 9 까지 와 A, B, .. 2024. 3. 19. [TIL]18.03.24 내일배움캠프 - SQL, ORM SQL과 ORM에 관해 차이점과 어떤 식으로 다른지 내용을 정리 하려 한다. 둘다 같은 점은 SQL과 ORM은 둘다 DB(datebase)를 연결하는 역할을 한다. 하지만 가져오는 방식이 아주 다르다. SQL SQL은 Structured Query Language의 약자로 데이터베이스에서 정보를 받아오고 처리 하는데 사용하는 언어이다. 사용방법은 영어문장 처럼 직관적으로 되어 있어 좋은거 같다. 하지만 이부분이 단점으로도 작용될 수 있는데 다양하게 같이 사용하면 문법이 어려워 질 수 있다. 그리고 사용 설계를 잘해야지 못한다면 데이터 처리 시간이 증가 할 수 있다. ORM ORM은 Object Relational Mapping의 약자로 객체와 관계형 데이터를 맵핑 시켜주는 역활을 한다. 원하는 정보의 데.. 2024. 3. 18. [TIL]24.03.15 내일배움캠프 - 분해합 / baekjoon 2231 python 완전탐색 문제 - 완전탐색은 말 그대로 모든 답안을 확인해 보고 답을 배출하는 방식으로 답이 늘어나면 시간복잡도도 같이 늘어나 O(n)이다. 아래의 문제를 푸는데 시간이 많이 걸렸다. 너무 어떤 식으로 문제를 풀어나가고 자료형의 이해를 도가 부족해 문제를 풀지 못했다. 그래서 팀원에게 도움을 받았다. 분해합 baekjoon 2231 python 문제 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 된다. 따라서 245는 256의 생성자가 된다. 물론, 어떤 자연수의 경우에는 생성자가 없을 수도 있다. 반대로, 생성자가 여러 개인.. 2024. 3. 15. [TIL]24.03.14 내일배움캠프 - 완전탐색 복습 완전탐색 말 그대로 일일이 나열하여 답을 찾는 방법이다. 다소 시간이 오래 걸릴 수도 있지만 확실하게 찾는 방법이다. 시간 복잡도에 따라 달라질 수 있다. 완전탐색 문제 Level1.py 문제 설명 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 명함 번호가로 길이세로 길이 16050 23070 36030 48040 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 .. 2024. 3. 14. [TIL]24.03.13내일배움캠프 알고리즘 복습하기 - Big o 알고리즘 어떠한 문제를 풀기 위한 절차나 방법으로 알기 쉽게 설명하는 것이다. 알고리즘을 통해 어떤 문제든 가장 합리적인 방법을 쉽게 찾기가 가능하다. 공간 복잡도 프로그램 실행을 할 경우 메모리의 사용량이 중요하다. 10을 투자 했는데 1이 돌아온다면 얼마나 억울 한가 이 처럼 공간 복잡도는 내가 투자한 공간의 량이며 적으면 적을수록 좋다. 시간 복잡도 특정 알고리즘이 어떤 문제를 해결하는데 걸리는 시간으로 영향을 많이 준다. big-o는 걸리는 시간으로 종류에 따라 사용하는 반복문에 따라 걸리는 시간이 천차만별이다. 10시간 일 했는데 1시간 일한 것만 받는 다면 얼마나 억울한가!! big-o 종류들을 암기해서 효율적으로 알고리즘 문제를 풀어보자!! 1. O(1) 상수 복잡도 문제를 해결하는데 오직 .. 2024. 3. 13. 이전 1 ··· 6 7 8 9 10 11 12 다음