분류 전체보기

코딩하는 대학생에서 개발자까지
C언어 스택 <자료구조> (C언어 C11 C99)
스택을 영어로 설명하면 first in last out이라고 한다. 나는 이 말을 듣자마자 공병이 떠올랐다. ptsd와 함께. 쓸데없는 소리는 여기까지 하고, first in last out을 알아듣게 설명하자면 먼저 입력을 한 값이 나중에 나오고, 나중에 입력된 값이 먼저 나온다는 소리다. 출력할 때는 위에서부터 하고 입력할 때는 쌓아 올리는 형식으로 한다는 말이다. ㅇ스택 문제를 풀 때는 4개의 함수가 필요하다. - 공백상태를 검사하는 함수 - 포화상태를 검사하는 함수 - 삽입하는 함수 - 배출하는 함수 공백상태를 검사하는 함수를 설명하겠다. top이란 변수를 호출했다. top은 삽입을 하면 1씩 커지고, 배출을 하면 1씩 작아지는 변수다. 그러므로, 공백상태를 검사하는 함수에서 top이 0보다 작으..
C언어 구조체 정리 (C언어 C11 C99)
구조체 , 구조체 포인터, TYPEDEF에 대해 설명하겠다. 1. 구조체는 밑에 있는 그림처럼 키워드 그리고 구조체 이름을 통해 정의한다. 그리고 안에 필요한 정보가 담긴 구조체의 멤버 변수를 적는다. 그 후, 메인 함수에서 구조체 변수를 생성후 (구조체변수.구조체의 멤버 변수)이런 식으로 호출을 한다. 1 2 3 4 5 6 7 int main() { struct book harry; harry.title = "harry potter"; harry.author = "J. K. Rowling"; harry.price = 18500; } Colored by Color Scripter cs 2. 구조체 포인터 구조체 포인터는 구조체와 같이 구조체를 정의 한뒤, 메인함수에서 달라진다. 메인함수에서 구조체 변수를..
백준(B3) 2747번: 피보나치 수 (C언어 C11 C99)
코드를 보기 전에: Dynamic Programming(동적 계획법)에 대해 안다면 이 문제는 쉽게 풀수 있을것이다. 이 문제가 왜 시간초과가 나는지 모르는 사람은 밑에 있는 코드를 보고 다시 한번 도전해보길 바란다. 1 2 3 4 5 6 7 8 9 10 11 int n[46]; int fibo(int x) { n[0] = 0; n[1] = 1; for (int a = 2; a
백준(S4) 10773번: 제로 (C언어 C11 C99)
코드를 보기 전에: 이 문제는 Last in First out 스택 문제다. 보통의 사람들은 이 문제를 함수로 풀었지만, 나는 다르게 풀었다. 나는 배열 하나를 추가로 만들어서 풀었다. 예제 문제를 예시로 들자면, 1,3,5,4,0,0,7,0,0,6이란 숫자가 입력됐다. 반복문을 만들어서 입력받은 숫자가 0이 아니면 다른 배열에 추가시키도록 했다. 1 3 5 4 1 2 3 4 5 6 7 for (int a = 0; a
백준(S4) 1026번: 보물 (C언어 C11 C99)
코드를 보기전에: 이 문제는 정말 심술궂은 그리디 알고리즘 문제다. 코드만 무책임하게 올려놓으면 이해하지말고 답이나 봐 이렇게 버릇없어 보이기 때문에 하나 하나씩 설명하겠다. 입력 :첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거나 같은 음이 아닌 정수이다. 이렇게 문제를 보고 알아야 하는것들이 있다. 1. N은 50보다 작거나 같은 자연수이다. 2. A와 B각 원소는 100보다 작거나 같은 음이 아닌 정수다. 이렇게 두가지는 꼭 알아야한다. 문제를 보면 B의 수를 재배열 하지말고 A의 수를 재배열해서 최솟값을 출력하라고 한다. 문제를 보자마자 내..
C언어 선택정렬 정리 (C언어 C11 C99)
선택 정렬의 개념: 가장 작은 것을 골라서 맨 앞으로 보내는 알고리즘 1부터 10까지의 숫자가 저장된 배열을 오름차순으로 출력하는 문제를 풀면서 선택 정렬을 설명하겠다. 먼저 소스코드이다. 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 #include int main() { int i, j, min, index, temp; int array[10] = { 2,4,6,8,9,7,5,3,1,10 }; for (i = 0; i
코딩하는_대학생
'분류 전체보기' 카테고리의 글 목록 (29 Page)