# c언어

197개의 포스트
post-thumbnail

[게임] 경찰서 조서 만들기

나도코딩 첫번째 게임

약 13시간 전
·
0개의 댓글
post-thumbnail

[자료구조] 복잡하지만 효율적인 정렬 알고리즘 10-2(병합 정렬)

병합 정렬은 "분할 정복" 이라는 알고리즘 디자인 기법에 근거하여 만들어진 정렬 방법이다.분할 정복이란, 말 그대로 복잡한 문제를 복잡하지 않은 문제로 분할하여! 정복! 하는 방법이다.단!! 분할을 하고 정복까지 했으니 결합의 과정을 거쳐야 완성된다1 단계 분할 : 해

약 15시간 전
·
0개의 댓글
post-thumbnail

[자료구조] 복잡하지만 효율적인 정렬 알고리즘 10-2(힙 정렬)

앞서 소개한 단순한 정렬 알고리즘은 정렬대상의 수가 적은 경우 효울적으로 사용할 수 있지만 정렬 대상의 수가 적지 않은 경우에는 아니다!그러므로 우리는 이 경우에서도의 만족스러운 결과를 보장하는 알고리즘이 필요하다.제목만 복잡하지만..이지! 사실상 앞서 설명한 정렬들이

약 17시간 전
·
0개의 댓글
post-thumbnail

[자료구조] 정렬(Sorting) 10-1(삽입 정렬)

삽입 정렬은 보는 관점에 따라서 별도의 메모리를 필요로 하지 않는 "개선된 선택 정렬"과 유사하다고 느낄 수 있지만 전혀 다른 방법으로 정렬을 이뤄나간다.위 그림의 배열은 정렬이 완료된 부분과 완료되지 않은 부분으로 나뉘어 있다. 이렇듯 삽입 정렬은 정렬 되지 않은 부

2일 전
·
0개의 댓글
post-thumbnail

[자료구조] 정렬(Sorting) 10-1(선택 정렬)

이번에 소개하는 선택정렬은 버블 정렬보다도 쉽고 간단한 알고리즘이다. 그림만 봐도 이해가 되지 않는가!?말 그대로 선택해서 정렬한다!그런데.. 보면 이런 생각이 들것이다"그럼 선택 정렬은 정렬결과를 담을 별도의 메모리 공간이 필요하겠네요!"위 그림 대로 진행한다면 그렇

2일 전
·
0개의 댓글
post-thumbnail

[자료구조] 정렬(Sorting) 10-1(버블정렬)

버블 정렬은 정렬의 대명사로 알려져 있는 만큼 이해하기도 구현하기도 쉽다. 하지만.. 그런만큼 성능에는 아쉬움이 있다.우선 버블 정렬의 과정을 보자 ! 이렇듯 버블 정렬은 인접한 두 개의 데이터를 비교해가면서 정렬을 진행하는 방식이다. 즉! "정렬의 우선순위가 가장 낮

2일 전
·
0개의 댓글
post-thumbnail

[자료구조] 포인터 함수

다른 곳에 세세히 설명 잘 되있겠지만, 내가 이해한것을 토대로 간편하게 보기위해 여기 남김!typedef 포인터 함수 선언시 \*를 붙이냐 안붙이냐에 따라서 구조체 정의가 달라질 수 있다.붙임 : 구조체 선언할때 꼭 붙인다.안붙임 : 구조체 선언시 붙이면 안된다. 파라

2일 전
·
0개의 댓글
post-thumbnail

[자료구조] 우선순위 큐의 활용

힙의 구현결과 : UsefulHeap.h,c우선 순위 큐의 구현결과 : PriorityQueue.h,cusefulHeap.h의 typedef 선언 변경typedef char HData; -> typedef char \* HData;Main.c

3일 전
·
0개의 댓글
post-thumbnail

[자료구조]우선순위 큐(Priority Queue)와 힙(Heap) 힙의 구현과 우선순위 큐의 완성 9-2-4

바로 우선순위 큐의 헤더,소스,메인 다보자 ! PriorityQueue.hPriorityQueue.cPriorityQueueMain.c

3일 전
·
0개의 댓글
post-thumbnail

[자료구조]우선순위 큐(Priority Queue)와 힙(Heap) 힙의 구현과 우선순위 큐의 완성 9-2-3

앞선 상황들의 문제의 해결을 위한 요구사항을 다음 한 문장으로 정리할 수 있다. 프로그래머가 우선순위의 판단 기준을 힙에 설정할 수 있어야 합니다.앞서 정의한 이 구조체를 변경해야한다.이 둘을 다음과 같이 하나의 구조체로 대신하자.가장 큰 변화는 구조체 HeapElem

3일 전
·
0개의 댓글
post-thumbnail

[자료구조]우선순위 큐(Priority Queue)와 힙(Heap) 힙의 구현과 우선순위 큐의 완성 9-2-2

우선 좋은 모델은 아니나 이해하기 용이한 방식으로 힙을 구현한 후 보다 합리적인 형태로 변경하자 ! 우선 헤더파일을 보자 SimpleHeap.h위의 파일은 순수한 힙의 구현을 위한 헤더파일이라고 하기보다는 우선순위 큐의 구현을 염두에 두고 정의한 헤더파일이다. 이것은

3일 전
·
0개의 댓글
post-thumbnail

[자료구조] 우선순위 큐(Priority Queue)와 힙(Heap) 힙의 구현과 우선순위 큐의 완성 9-2-1

힙의 구현은 곧 우선순위 큐의 완성으로 이어진다고해서 이 둘이 동일하다는것은 정확하지 않는것이다. 그러므로 구분할 수 있어야한다. >힙은 우선순위 큐의 구현에 어울리는, 완전 이진 트리의 일종이라는 사실을 기억해야한다. 힙에서의 데이터 저장과정 "마지막 위치"는

3일 전
·
0개의 댓글
post-thumbnail

[Swift] 다리를 지나는 트럭

Swift 로 코딩테스트 문제풀기트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이는 bridge_length이고 다리는 무게 w

4일 전
·
0개의 댓글
post-thumbnail

[자료구조] 우선순위 큐(Priority Queue)와 힙(Heap) 우선순위 큐의 이해 9-1

우선순위 큐는 이 이름에서 의미하듯이 큐와 관련있어서 "큐"를 확장하는 수준에 마무리 될 것 같지만.. 많은 차이가 있다.큐와 우선 순위 큐는 핵심연산이 enqueue dequeue 로 동일하지만..연산결과에는 차이가 있다.큐는 연산의 결과로 먼저 들어간 데이터가 먼저

5일 전
·
0개의 댓글
post-thumbnail

[자료구조] 중위 표기법의 소괄호 문제 8 - 2

보통 자료구조 과목에서는 중위 표기법의 소괄호 출력까지는 신경을 쓰지 않지만....우리는 한번 구현해보자.중위 표기법에는 다음 세가지가 있다3 + 2 \* 73 + ( 2 \* 7 )( 3 + ( 2 \* 7 ) ) 연산자의 수만큼 소괄호를 구성하는 방법이 수식 트리에

6일 전
·
0개의 댓글

Swift 로 해결하기

N개의 자연수 중,각 자리 숫자의 합이 가장 큰 수 출력N 개의 자연수 중 각 자리 숫자의 합이 가장 큰 수를 출력하라...자연수 N, 그리고 N개의 자연수가 주어진다.swift 의 for 문은 , C 언어의 for 문과 다르게 index 를 쓰지 않는다. ( swif

6일 전
·
0개의 댓글

Swift 로 해결하기

스위프트로 알고리즘 문제 해결하기 N 이하의 자연수들의 약수의 개수를 출력하라

6일 전
·
0개의 댓글
post-thumbnail

[자료구조] 수식 트리(Expression Tree)의 구현 8-4

이진 트리에 대한 설명에 이어서이제는 이진 트리의 일종인 수식 트리에 대해 배워보자.앞에서는 이진 트리를 구성하는데 필요한 도구에 대해 만들었다면 이제는 이 도구를 이용하여 이진 트리의 일종인 "수식 트리"를 만들 것이다.이러한 방식으로 중위 표기법 수식을 컴퓨터가 알

6일 전
·
0개의 댓글
post-thumbnail

[자료구조] 순회를 통한 트리 데이터의 소멸 8-3 문제

앞서 구현한 이진트리에는 소멸관련 함수가 없다.우린 소멸을 위해 순회를 배웠으니 ! 배운 내용들을 토대로 순회를 통한 동적으로 할당된 노드들을 소멸시키고 종료해보자.binaryTree.c 파일에이 코드를 추가해주면된다.그 이후 다른파일에도 참고 해주면된다.소멸시키는 함

6일 전
·
0개의 댓글
post-thumbnail

[자료구조] 이진 트리의 순회 8-3

전위 순회 : 루트 노드를 먼저 !중위 순회 : 루트 노드를 중간에 !후위 순회 : 루트 노드를 마지막에 !이렇듯 이진트리를 순회하는 방법에는 "루트 노드를 언제 방문하느냐" 에 따라서 나뉜다. 이렇게 높이가 1인 트리의 순회는 어렵지 않는데..그 이상의 높이를 가진

6일 전
·
0개의 댓글