일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- BOJ
- 인프런
- DP
- Python
- 따라하며 배우는 C언어
- server
- 백준
- programmers
- graph
- Cleancode
- php
- Algospot
- 종만북
- C언어
- udemy
- Math
- 따배씨
- C
- String
- sorting
- JavaScript
- dfs
- 생활코딩
- 정수론
- web
- 따라하면서 배우는 C언어
- greedy
- Algorithm
- BFS
- BASIC
- Today
- Total
목록전체 글 (421)
몽상실현개발주의
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.5 자동 변수 Automatic Variables #include /* Automatic storage class - Automatic storage duration, block scope, no linkage - Any variable declared in a block or function header */ int main(){ auto int a; // Keyworld auto : a storage-class specifier a = 1024; //printf("%d\",a); //auto int b = a * 3; return 0; } auto int a; a = 10..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.4 저장 공간의 다섯 가지 분류 Five Storage Classes 저장 공간의 분류는 크게 두가지로도 나눌 수 있다 Static이 아닌것 Automatic 모든 지역변수 지속기간과 영역을 프로그래머가 지정 해 주는 것이 아니 꼭 필요한 기간에만 지속이 되고 필요한 부분에서만 볼 수 있도록 영역을 지정 해 줌 Register CPU 안의 임시 작업 공간인 레지스터에 올라갈 가능성이 높아짐 최신 Compiler 는 Register 선언을 하지 않아도 알아서 Register 를 사용하여 효율을 높여줌 Static 프로그램이 시작될 때 부터 끝날 때 까지 메모리 공간에 유지 In..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.3 변수의 영역 Scope 과 연결 상태 Linkage, 객체의 지속 기간 Duration #include /* Variable scopes (visibility) - block, function, function prototype, file. */ // file scope int g_i = 123; // global variable int g_j; // global variable void func1(){ g_i++; // uses g_i } void func2(){ g_i += 2; // uses g_i // local = 456; // Error } int main(){..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.2 객체 Object 와 식별자 Identifier, L-value 와 R-value #include int main(){ /* Object - "An Object is simply a block of memory that can sotre a value." - Object has more developed meaning in C++ and Object Oriented Programming Identifiers - Names of variables, function, macros, amd other entities */ int var_name = 3; // creates an..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.1 메모리 레이아웃 훑어보기 프로그램 코드는 변형이 되면 안되기 때문에 TEXT Segment 에 읽기 전용으로 저장됨 프로그램이 실행되면서 코드도 프로그램이 종료 될 때 까지 메모리 계속 존재 전역변수로 메모리를 선언하는것이 가장 편하지만, 프로그램이 끝날 때 까지 메모리가 할당 되어 있는것은 비 효율적임 블럭 안에서 선언되는 메모리는 stack 에 할당, 그 블럭이 실행되는 동안에만 메모리에 할당되고 블럭의 실행이 종료되면 운영체제에게 메모리 권한을 넘겨줌 효율적인 메모리 사용 가능 main() 함수에 선언된 변수의 메모리는, main 함수의 특성상 프로그램이 종료될때 까..
[BOJ] 2146 / 다리 만들기 / Python 파이썬 https://www.acmicpc.net/problem/2146 2146번: 다리 만들기 여러 섬으로 이루어진 나라가 있다. 이 나라의 대통령은 섬을 잇는 다리를 만들겠다는 공약으로 인기몰이를 해 당선될 수 있었다. 하지만 막상 대통령에 취임하자, 다리를 놓는다는 것이 아깝다 www.acmicpc.net 풀이 주어진 이중배열에서 1로 이루어진 무리 사이의 최단 거리를 구하는 문제이다. 문제를 이해하였지만, 구현하는데에 많은 어려움이 있었다. BFS 를 이용하여 최단거리를 구하는 것과 문제를 풀기위한 환경 구성을 함께 고려해 주어야 한다. from collections import deque def setIsland(y, x, setN): glo..
[BOJ] 2178 / 미로 탐색 / Python 파이썬 https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 풀이 경로탐색의 기본 문제이다. bfs 로 경로상의 이동 거리를 저장하며 경로를 진행하도록 하였다. from collections import deque N, M = map(int, input().split()) maps = [] for _ in range(N): maps.append(list(map(int, list(input())))) dq = deque() dq.ap..
[BOJ] 7576 / 토마토 / Python 파이썬 https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 풀이 이차원 배열에서 주어진 시작점으로 부터 주어진 규칙을 시행하는 문제였다. 처음에는 각각의 시작점에서 시행하는 경우가 동시에 발생 하는 것을 고려하지 못하고, 독립적으로 시행하게 구현하였더니 시간초과가 발생하였다. BFS 로 각각의 시작점을 같은 단계에서 동시에 수행되도록 구현하였더니 통과하였다. from collection..