*어*
Bronze개인인증
팔로워1 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 9
검색어 입력폼
  • C언어로 구현한 Binary Search Tree
    1. 과제 목표- 입력파일로 주어진 n개의 양의 정수들을 읽어 binary search tree를 구성하라. 입력 파일의 첫째줄에는 읽어야 할 정수들의 개수 n이 주어지고 그 다음 n개의 줄에 양수인 정수가 한 줄에 하나씩 주어진다.2. 설계- 이번 과제는 이진 트리의 대표적인 한 형태인 이진 탐색 트리를 구성하는 함수들을 구현하는 것이었습니다. 트리의 노드는 구조체로 선언했으며 데이터는 정수형 변수로 선언했습니다. 입력 파일은 input.txt에서 각 값을 읽어 들이도록 했는데, 모든 입력 값을 버퍼에 일단 읽어들인 후, 다시 버퍼를 순회하며 노드 추가 함수로 이진 탐색 트리에 추가되도록 했습니다.3. 결과 보고- 입력 파일은 같은 폴더 내의 input.txt로 열도록 지정했습니다.(input.txt의 내용)(코드를 실행한 결과)4. 자료구조 및 알고리즘 분석#define IS_FULL(node) !node#define MAX_TERMS 100// 노드타입 및 포인터타입 선언typedef struct Node* NodePointer;typedef struct Node{NodePointer leftChild;int key;NodePointer rightChild;} Node;가장 먼저 이진 탐색 트리를 구성할 노드 타입을 선언했습니다. 각각 왼쪽 자식 링크와 오른쪽 자식 링크, 그리고 정수형 데이터 변수를 가지고 있습니다. MAX_TERMS는 입력 파일에서 읽은 값들을 트리에 삽입하기 전 임시 저장하는 버퍼 기능을 하는 배열의 크기를 나타냅니다.직접적으로 MAX_TERMS가 동적 노드 생성에 영향을 주는 것은 아니지만 결국 입력된 버퍼를 거쳐 값들을 트리에 삽입하므로 결론적으로 최대 노드 개수를 MAX_TERMS로 제한하게 됩니다.
    공학/기술| 2021.03.15| 10페이지| 1,000원| 조회(404)
    미리보기
  • C언어로 구현한 Biconnected Component
    1. 과제 목표- 입력 파일에 주어진 그래프의 adjacency list를 읽고 그 그래프에 대한 Biconnected components를 구한다.2. 설계- 이번 과제는 입력 파일을 통해 그래프의 adjacency list를 읽어들이고, 이를 설계한 그래프 자료구조로 옮긴 후, 교재를 참고해 biconnected components를 구하는 내용이었습니다. 해당 함수에서 스택을 사용하는 부분에 대해서는, Linked Representation으로 구현된 스택을 사용하였습니다 (6주차 과제 구현 내용에서 일부 참고).3. 결과 보고- 입력 파일은 같은 폴더 내의 input.txt로 열도록 지정했습니다.input.txt에서 input 파일을 읽어 들여 graph 자료구조로 추가하는 단계입니다.
    공학/기술| 2021.03.15| 9페이지| 1,000원| 조회(107)
    미리보기
  • C언어로 구현한 KMP 알고리즘
    1. 과제 목표- 두 개의 스트링(string, pat)을 입력으로 받아 pattern matching을 하는 KMP 알고리즘을 구현하시오.2. 설계- 스트링 안에 원하는 패턴을 찾는 가장 단순한 방법은 한 칸씩 대입하며 틀린 경우 1칸을 이동하여 다시 패턴의 처음부터 비교하는 경우입니다. 이 때의 복잡도는 스트링의 길이 M, 패턴의 길이 N이라고 했을 때, O(n*m)이 됩니다.- 본 과제에서는 같은 작업에 대해 복잡도를 O(n+m)까지 줄일 수 있는 KMP 알고리즘 (KnuthMorris-Pratt Algorithm)을 강의자료에서 소개된 코드 그대로 사용했습니다. 사용한 자료 구조로는, 검색할 문자열 string과 패턴 문자열 pat, 그리고 정수형 failure 세 개의 배열을 사용했습니다.3. 결과 보고- Input으로 주어진 kmp.txt의 내용을 확인한 결과입니다.4. 자료구조 및 알고리즘 분석- MAX_STRING_SIZE와 MAX_PATTERN_SIZE는 각각 100으로 설정했으므로 찾을 문자열과 패턴은 100글자 이내의 배열로 선언됩니다. 함수는 failure 배열의 값을 설정하는 fail 함수와, 생성된 failure 배열의 값을 이용해 실제 패턴을 매칭하는 pmatch 함수로 나뉩니다.파일 입출력을 통해 찾을 문자열과 패턴 문자열을 입력 받는 부분입니다. 또한 pat을 주소값 형태로 fail 함수에 넘긴 후 처리가 끝나면 pmatch 함수의 정수로 반환되는 결과값이 그대로 출력되도록 넘겨주었습니다.
    공학/기술| 2021.03.15| 6페이지| 1,000원| 조회(291)
    미리보기
  • C언어로 구현한 Threaded Binary Tree 평가A+최고예요
    1. 과제 목표- Threaded binary tree가 주어졌을 때, 명시된 node의 오른쪽에 새로운 node를 삽입하는 함수를 구현하라. 노드의 삽입이 완료된 threaded binary tree는 inorder traversal를 사용하여 threaded binary tree가 잘 구성되어 있는지 확인한다.2. 설계- 이번 과제는 이진 트리의 종류 중 하나인 스레드 이진 트리 구조를 Linked Representation으로 구현하고, 주어진 대로 노드를 구성한 후, 미리 작성된 노드 추가 함수의 나머지 부분을 채워 코드를 작성하는 내용이었습니다. 원래 이진 트리의 노드 타입을 선언할 때 필요한 필드는 각각 왼쪽과 오른쪽 자식으로의 링크, 그리고 데이터 필드입니다. 하지만 한 가지 비효율적인 점은, 메모리 상에 존재하는 이진 트리의 노드들 중에서 리프 노드의 경우는 양쪽 자식 링크를 전혀 사용하지 못한 채로 존재한다는 점입니다. 따라서 이러한 리프 노드의 비 할당 링크를 각각 해당 노드의 중위 순회의 선행자, 후속자로 연결하면 활용도를 높일 수 있지 않을까 하는 것이 스레드 이진 트리의 개념입니다.- 본 과제에서는 강의 및 강의 교재에서 스레드 이진 트리에 대해 정의한 형태대로 구현을 따라갔으며, 강의 내용에는 나오지 않았지만 프로그램 종료 직전 사용한 메모리를 순회하며 해제하는 함수까지 구현하였습니다.3. 결과 보고- 과제 요구사항에 나온 노드들을 구현하였는데 디버깅 중에 construct_tree() 함수가 끝난 직후와 모든 노드의 추가가 끝난 직후 두 시점에서 tinorder() 함수의 출력값을 캡쳐하였습니다.4. 자료구조 및 알고리즘 분석가장 먼저 정의한 스레드 이진 트리를 구성할 노드 타입의 선업입니다. 각각 왼쪽 자식 링크와 오른쪽 자식 링크 외에 스레드 여부를 가리키는 Boolean 형태의 값을 더 가지고 있는데, 스레드 기능으로 링크가 작동할 시 해당 방향의 링크는 자식 링크의 포인터를 그대로 사용
    공학/기술| 2021.03.15| 11페이지| 1,000원| 조회(295)
    미리보기
  • C언어로 구현한 Sparse Matrix
    1. 과제 목표- Linked List로 Sparse Matrix 구조를 구현하고, 주어진 두 개의 파일에서 행렬을 각각 입력받아 처리하는 프로그램을 작성하시오.2. 설계- 이번 과제는 주어진 파일에서 각각 행렬에 대한 정보를 얻되, 이를 배열이 아닌 각각의 노드가 링크드 리스트의 노드 형태로 이어진, 0이 아닌 요소의 데이터만을 갖는 희소 행렬 형태로 처리하는 코드를 구현하는 것이었습니다. 각각의 기능을 모듈화해, mread() 함수로 파일에서의 입력을 처리하고 mwrite() 함수를 통해 행렬 데이터의 시각화 기능을 처리했으며 merase() 함수로 사용한 동적 메모리의 해제 기능을 나누었습니다. 수업시간에 넘어갔던 부분이라 평소보다 더 디버깅하는데 힘들었지만, 평소 헷갈리던 부분이라서 이 과제를 통해 이해가 한층 깊어진 것 같아 뿌듯합니다. 코드에 대한 설명은 4. 자료구조 및 알고리즘 분석에서 이어지겠습니다.3. 결과 보고- Input으로 주어진 A.txt와 B.txt의 정보를 입력으로 사용한 결과입니다.4. 자료구조 및 알고리즘 분석row가 n이고 col이 m인 행렬이 가지는 이차원 배열의 표현은 반드시 n * m만큼의 공간을 차지한다. 이에 비해 sparse matrix 형태의 표현은 0이 아닌 요소들만을 표현하므로 메모리의 낭비가 적다. 본 코드에서는 해당 요소들을 각각 노드로 구성하고 각각을 링크로 연결시켜줌으로써 전체적으로 링크드 리스트의 형태를 구성하였다. entryNode 같은 경우 요소들이 갖는 최소한의 정보인 행, 열, 그리고 변수값을 가지도록 하는 struct이며, 노드는 이를 포함함과 동시에 다른 노드들을 가리키는 링크를 가지는 matrixNode로 선언하였다. 이 때, 링크는 오른쪽과 아래쪽을 가리키는 down과 right의 값을 가진다.
    공학/기술| 2021.03.15| 14페이지| 1,000원| 조회(251)
    미리보기
전체보기
받은후기 3
3개 리뷰 평점
  • A+최고예요
    3
  • A좋아요
    0
  • B괜찮아요
    0
  • C아쉬워요
    0
  • D별로예요
    0
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 05월 04일 월요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
9:36 오후
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감