'SW 업무 관련/기타' 카테고리의 글 목록

SW 업무 관련/기타 5

[알고리즘][C언어][C++] 더블 링크드 리스트

동적 할당이 없이 NODE 구조체 배열에서 하나의 노드씩 가져와 더블 링크드 리스트를 만드는 예제이다. 더블 링크드 리스트를 이해했다면 크게 어렵지 않은 내용이다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 #include int node_index; // NODE 배열 선언 struct NODE { int value; NODE * prev; NODE..

[알고리즘][c언어][c++] 링크드 리스트

알고리즘 프로 등급을 준비하기로 하였다.. 입사 준비를 위해 DFS, BFS, 브루트포스, DP 등 과같은 알고리즘과 다른 방식으로 출제된다. 특정 자료구조를 활용한 문제가 나오기 때문에 우선 자료구조를 공부하기로 하였다. 어느 글에서 동적 할당대신 구조체 배열을 이용하여 링크드리스트를 만드는 글을 보았고 구연해 보았다. 특별한 것은 동적할당 없이 이미 선언된 노드 배열에서 노드를 가져온다. 주석을 달아 놓았다. 장점은 동적할당보다 속도가 우수하며 디버깅이 쉽단다!! 아직 활용을 안 해봐서 모르겠다. 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 32 33 34 35 36 37 38 39 40 41 4..

배열 구간의 합 구하기

1차원 배열의 부분합을 구하는 문제이다. N개의 수들이 무작위로 입력될 경우 N개의 범위 안의 범위의 부분합을 구하는 문제이다. 입력을 받을 때 이전 까지의 입력들에 합에 자신을 합하여 인덱스에 넣어주면 된다. 여기서 a~b까지의 범위를 합을 구하라고하면 b까지의 합 - (a-1) 까지의 합을 해주면 정답이 된다. 정답 코드 http://colorscripter.com/s/HEsTF1J

[1] DFS 재귀함수 연습.// 팩토리얼

//숫자 n을 입력받아 n!를 출력하는 예제.//재귀함수를 이용한다. #include int factorial(int n){if (n == 1) return 1; return n*factorial(n - 1);} int main(){int n; printf("숫자를 입력하세요.");scanf_s("%d", &n); printf("%d", factorial(n)); return 0;} 예로 n에 5를 대입하면 factorial 함수 호출. 1. return n*factorial(n - 1); -> 5*factorial(4); 여게서 factorial(4) 호출.2. return 4*factorial(3); 여기서 factorial(3) 호출.3. return 3*factorial(2); 여기서 factor..