100%를 한번에 바꾸는건 어려워도 1%를 100번 바꾸는건 쉽다.

생각정리 자세히보기

컴퓨터공학 17

[자료구조] 자료구조 개론

자료를 정리하는 이유효율 좋은 사람은 정리를 잘한다.일정 규칙으로 자료를 나열하는 것이 자료구조이다.구조화된 자료에서 원하는 것을 빨리 찾아내는 방법이 알고리즘이다.지저분한 방을 깨끗이 정리하는 규칙이 알고리즘이다.선형 자료구조StackLIFO 구조처음 넣은 것은 맨 아래 바닥에 깔린다. 두 번째 부터는 처음 넣은 것 위에 쌓인다.바닥에 있는 것을 꺼내려면 위에 쌓인 것들을 모두 치우는 수 밖에 없다.IO가 한곳에서 일어난다.뒤집기, 되돌아가기 등에서 사용된다.QueueFIFO 구조버스를 타기 위해 줄을 서는 것과 같다.은행에서도 비슷한 경험을 할 수 있다.IO가 앞에서 입력 뒤에서 출력이 된다.비선형 자료구조2진 트리자료당 두 개의 위치정보를 이용해 셋을 하나로 묶는다.맨 꼭대기를 기준으로 왼쪽에는 작..

[컴퓨터공학] 프로그래밍 개론

프로그래밍이란 절차적 글쓰기이다. 어떤 일들의 진행순서를 정하는 것이 프로그래밍이다. 즉 일하는 절차에 대한 글쓰기이다.글로 작성한 해야 할 일을 정한 순서대로 수행하는 것을 실행이라고 한다.모든 실행은 고유한 흐름을 가진다. 프로그램의 목표는 근본적으로 자동화에 있다.컴파일과 고급어, 저급어저급어는 기계어이다.기계어는 알아보기 매우 어렵고 고급어는 인간이 이해하기 쉬운 언어이다.고급어의 코드는 보통 함수 단위로 묶어 표시한다.고급어를 기계어로 바꾸는 것이 컴파일이다.컴파일을 해주는 것이 바로 컴파일러이다. C는 네이티브 언어다.컴파일이 되면 OS와 CPU에 의존적인 실행파일이 만들어진다.이렇게 컴파일을 할 경우 OS와 CPU에 의존적이면 네이티브 코드라고 부른다. Java는 네이티브와 매니지드의 특징을..

컴퓨터공학 2024.12.02

[운영체제] 운영체제 개론

동시성과 병렬성동시성: 여러 가지 일이 동시에 진행되는 것병렬성: 같은 일을 여러 주체가 함께 동시에 진행하는 것원자성, 동기화 그리고 교착상태동시성하면 항상 따라오는 이야기가 원자성이다.두가지 일이 동시에 자원을 선점하는 경우 기다려야하는 상황이 발생하기도 한다.이런 상황을 정리할 수 있는 동기화라는 개념이 나오게 된다. 화장실에 비유를 들어서 이야기를 하자면 화장실에 진입하면 Lock이 걸리고 화장실을 나오면 UnLock을 하게 된다.화장실을 선점하고 있는 구간이 원자성이 보장될 수 있는 구간이다. 원자성: 동시에 일이 일어나도 자원을 선점하고 있다면 그것을 보장할 수 있도록 하는것 동기화: 누군가 선점을 하고 있는 동안은 원자성을 보장할 수 있도록 하는 것 교착상태: 자원을 선점하기 위해서 서로 대..

[컴퓨터 구조] 컴퓨터 구조 개론

디지털회로어떻게 하면 CPU 제작할 수 있을까에 대한 이야기이다.CPU는 전자계산기이다.전자식인 이유는 효율적이고 빠르기 때문이다. AND, OR, XOR, NOT 연산에 대해서 이야기를 하려고 한다. AND는 두개 다 참일경우 참OR의 경우 둘중 하나라도 참일경우 참XOR의 경우 두개가 서로 다를때 참NOT의 경우 0이면 1로 1이면 0으로 변경 이 위의 규칙은 모두 사칙연산을 위해서 세팅이 된다…! 이걸 적용시킨게 반도체이고… 빵판이라고 부르는게 된다고 한다…!컴퓨터가 덧셈하는 방법XOR 연산과 AND 연산을 사용하여 자리올림을 진행한다.컴퓨터가 뺄셈하는 방법NOT 연산을 하고 그 수에 1을 더한 후 자리올림은 버린다. (2의 보수)컴퓨터가 곱하고 나누는 방법왼쪽으로 Shift를 하고 오른쪽 맨 끝에..

[컴퓨터 공학] CS를 위한 기초 상식

1비트와 디지털1비트: 전기 스위치 1개전기가 흐르면 1, 아니면 0 4비트는 16가지의 경우의 수가 있다. 16, 8, 4, 2, 1 이렇게 외우면 된다.4비트와 16진수 그리고 진법변환거의 대부분의 경우 16진수 표기를 한다. 16진수 한글자는 4비트다. 16진수에서 10으로 넘어가는 경우가 A이다. 2진수로는 1010이다. 예를 들어 F4의 경우 8비트가 된다. => 1111 010016진수 표기가 사용되는 예색상표현, 컴퓨터 하드웨어 주소 표현, 메모리 값 표현 색상표현의 경우 8비트 => 256 (0 ~ 255)외워야 할 단위 체계와 숫자8비트를 하나로 묶어 1바이트라고 한다.1바이트는 영문자 한 글자가 저장될 수 있는 메모리 크기이며 관리의 최소 단위이다. 한글은 2바이트가 필요하다. 4비트는..

컴퓨터공학 2024.11.18

[알고리즘] 컨트롤 제트

문제 설명 숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 solution 함수를 완성해보세요. 제한 사항 1 ≤ s의 길이 ≤ 200 -1,000

[알고리즘] 숨어있는 숫자의 덧셈 (2)

문제 설명 문자열 my_string이 매개변수로 주어집니다. my_string은 소문자, 대문자, 자연수로만 구성되어있습니다. my_string안의 자연수들의 합을 return하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ my_string의 길이 ≤ 1,000 1 ≤ my_string 안의 자연수 ≤ 1000 연속된 수는 하나의 숫자로 간주합니다. 000123과 같이 0이 선행하는 경우는 없습니다. 문자열에 자연수가 없는 경우 0을 return 해주세요. 내가 풀이한 방법 class Solution { public int solution(String my_string) { int answer = 0; String[] split = my_string.split("[A-z]"); for (S..