본문 바로가기

분류 전체보기502

2. 데이터의 표현 - 진법 1. 진법 - 컴퓨터는 0과 1을 사용하는 2진법을 이용해 데이터를 이해한다. - 사람이 이해할 수 있도록 2진법을 다양한 진법으로 확장하여 표현한다. - 기본적으로 사용되는 진법은 다음과 같다. a) 2진법, 8진법, 10진법, 16진법에 대하여 - 2진법은 0과 1만을 사용하여 수를 표현하는 방법이다. - 8진법은 0~7까지 사용하여 수를 표현하는 방법이다. - 10진법은 0~9까지 사용하여 수를 표현하는 방법이다. - 16진법은 0~9와 A, B, C, D, E, F를 사용하여 수를 표현하는 방법이다. b) 2진법 ↔ 10진법 변환방법 b) 10진법 ↔ 8진법 변환방법 c) 16진법 ↔ 10진법 변환방법 d) 8진법, 16진법를 2진법으로 변환하고 싶다면? - 8진법를 2진법으로 변환하거나, 8진법.. 2021. 8. 2.
1. 컴퓨터의 구성요소 및 기능 1. 컴퓨터의 기본 구성 a) 중앙처리장치(CPU - Central Processing Unit) - CPU / MPU b) 주변장치(Peripheral Device) - 기억장치(Memory Unit) - 보조기억장치(Auxiliary memory device) - 입출력장치(I/O device) 2. 중앙처리장치에 대하여 a) CPU - 마더보드(Mother board): 데이터의 전달 통로가 설계되어 있는 메인보드 - 역할: 실행 프로그램의 코드/명령을 해석, 실행, 장치제어한다. b) CPU의 구조 c)MPU(Micro Processing Unit) - 병렬처리, 멀티쓰레딩 등이 가능한 CPU - 인텔 선전에보면 마이크로 프로세서 라고 하는데, 이를 의미하는 것이다. d) CPU의 발전 - CPU.. 2021. 8. 2.
파이썬 배열 - 개념 및 메소드 정리 1. 파이썬의 배열은 리스트다. 파이썬의 배열은 배열이 아니라 리스트이다. 왜 그럴까? 같이 알아보자. a) 파이썬의 배열은 배열의 특징을 갖지 않는다. 컴퓨터 공학의 측면에서 보면 '배열'은 고정된 크기를 갖는다. 그리고 배열의 요소는 모두 동일한 크기를 갖는다는 특징이 있다. 하지만, 파이썬의 배열은 고정된 크기를 갖지 않는다. 이는 '리스트'의 특징이다. b) Dynamic Array 컴퓨터 공학에서 리스트는 index가 아니라 pointer를 사용한다. 포인터는 다음 요소의 값을 가리키는 주소값을 담고 있는 변수다. 이를 메모리 관점에서 보면, 리스트의 요소들은 연속적인 메모리 주소값을 할당받는게 아니라(이는 배열의 특징이다.) 메모리의 여기 저기의 주소값을 할당받아 그 위치에 값이 저장되는 구조.. 2021. 7. 30.
회사가 신입 개발자에게 원하는 것 1. 회사가 원하는 것 회사가 신입 개발자에게 원하는 것은 "야생성" 이다. 신입 개발자는 야생성을 키워야 한다. 2. 클론코딩을 하는 이유 나는 그동안 몇개의 클론코딩을 다음과 같은 이유로 진행하였다. - 특정 언어의 사용법을 빠르게 배우기 위해서 - 특정 프레임워크의 흐름을 빠르게 이해하기 위해서 따라적은 코드는 절대로 나의 것이 될 수 없다. 하지만, 초심자로써 이해의 측면에서는 굉장히 도움이 된다. 아쉽게도 거기까지다. 3. 깨달음 오늘 개발바닥 유튜브를 보면서 한가지 굉장히 중요한 것을 알게 되었다. - 회사는 신입 지원자의 클론 코딩을 좋아하지 않는다. 여기에는 다음과 같은 여러가지 이유가 있다. - 클론코딩은 생각하지 않고 강의대로 따라 치기만 하면 된다. - 해결해야 하는 문제에 대해서 해.. 2021. 7. 29.
입출력과 사칙연산 메소드 정리 1. 단계별 풀이 https://www.acmicpc.net/step 단계별로 풀어보기 단계별은 @jh05013님이 관리하고 계십니다. 단계제목설명정보총 문제내가 맞은 문제1입출력과 사칙연산입력, 출력과 사칙연산을 연습해 봅시다. Hello World!112if문if문을 사용해 봅시다.53for문for문을 www.acmicpc.net 대기업 코딩테스트를 준비하기 시작한 시점에서 백준의 단계별 풀이를 차근차근 풀어나가려고 합니다. 정말 쉬운 문제푸터 중/고급 정렬문제 까지 단계별로 잘 나뉘어 있습니다. 2. 많이 쓰는 메소드 1. map() - map()은 입력값을 특정 자료형으로 변경하여 받기 위해 사용한다. - 만약 입력값을 정수형으로 받고 싶다면 다음과 같이 사용할 수 있다. userInput = m.. 2021. 7. 26.
21년 상반기 회고록 - 다음 목적지를 향하여 1. 4개월 간의 스타트업 도전을 마무리하며 a) 다 같이 잘 사는 세상을 만들고 싶었다. 나는 운이 좋은 인생을 살고 있다고 생각한다. 운이 좋게도 훌륭한 부모님을 만나 어릴 때부터 세상 곳곳을 누비며 살았고, 세상의 다양한 면모를 보며 살아왔다. 그렇게 형성된 세상을 바라보는 관점은 남들과는 조금 달랐지만, 유유상종이라 미국 유학을 하면서 나와 뜻이 맞는 지금의 스타트업 멤버를 만날 수 있었다. 순수했던 걸까, 순진했던 걸까? 이기주의와 개인주의 사이에서 줄다리기 하는 시대상을 보면서, 우리는 함께라서 즐겁고 함께라서 잘 살 수 있는 세상을, 그런 문화를 만들고 싶었다. b) 사업은 사업처럼 해야한다. 사회적 경험도, 개인적 능력도 많은 부분에서 부족함을 느꼈다. 당연한 것이다. 우리가 할 수 있는 .. 2021. 7. 25.
오늘의 알고리즘(백준 11004) 1. 백준 11004, K번째 수 https://www.acmicpc.net/problem/11004 11004번: K번째 수 수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 2. 요구사항 - 입력값 두개를 받는다. ex) N K - 입력값 N은 입력 받을 숫자의 개수 - 입력값 K는 자리 번호이다. - N개 만큼의 수를 입력받고 이를 오름차순으로 정렬한다. - 그리고 K-1번째 자리에 있는 숫자를 출력한다. index는 0번부터니까 3. 어떻게 풀까? n, k = map(int, input().split()) array = list(map(int, input().split())) arr.. 2021. 7. 23.
오늘의 알고리즘(백준 2751) 1. 백준 2751, 수 정렬하기 2 https://www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 2. 요구사항 - 첫번째 입력값 N은 몇개의 수가 입력되는 지를 정한다. - N개의 수가 입력되고 나면 이를 오름차순으로 정리해야 한다. 3. 어떻게 풀어야 할까? - int(input())으로 첫번째 입력값 N을 받는다. - map을 이용하여 N개의 input을 배열로 정리한다. - N개의 요소를 갖는 배열을 오름차순으로 정렬한다. - 1개씩 출.. 2021. 7. 23.
오늘의 알고리즘(백준 7490) 1. 백준 7490, 0 만들기 https://www.acmicpc.net/problem/7490 7490번: 0 만들기 각 테스트 케이스에 대해 ASCII 순서에 따라 결과가 0이 되는 모든 수식을 출력한다. 각 테스트 케이스의 결과는 한 줄을 띄워 구분한다. www.acmicpc.net 2. 요구사항 - 첫번째 입력값은 테스트 케이스의 개수(N < 10)가 주어진다. ex) 2가 입력된다면, 테스트 케이스가 2개라는 뜻 - 그 다음 N개 만큼 테스트 할 숫자의 범위(3 2021. 7. 22.