School Lecture Study/과제를 해보자 4

[알고리즘] 연결리스트 문자열 삽입

계절 알고리즘 수업을 듣는데, 2일 간은 자료 구조 수업을 한다고 하셔서 이번 주 과제는 연결리스트였다. 지금까지 연결리스트 입력을 숫자로만 받아봤는데, 이번에는 문자열을 받는 과제였다. #include #include typedef struct Node { char* name; char* depart; char* grade; char* gender; struct Node* next; } Node; void insertNode(Node *student, char*name, char*depart, char*grade, char*gender ) { Node* nextStudent = (Node*)malloc(sizeof(Node)); nextStudent->name = name; nextStudent->de..

[소프트웨어프로젝트] 과제 6

한 학기 동안 정말 별 생각이 다 들었던 소프트웨어프로젝트 과제 6을 올려보려한다. 해커톤 때문에 바빠서 과제 6은 제출 당일에 작성하게 되었는데, 10시간 정도 걸렸다. 막 걱정한 것 치고는 그렇게 어렵지는 않았는데, 교수님이 의도한 바를 잘 구현했는지는 잘 모르겠다. 그렇게 깔끔하게 짜지는 못한 것 같다. 교수님이 Java 스타일을 강조하셨는데, 이렇게 짠 것도 Java 스타일이라고 할 수 있을까 싶다. 과제를 하면서 고민했던 것은 어떻게 화면 갱신을 할까였다. 그냥 component에 revalidate, repaint만 하면 되는 줄 알았는데 전혀 갱신이 되지 않아서 고민했었다. 그래서 아예 JFrame에서 삭제하고 다시 add하는 방식으로 구현하였다. 다행히 이렇게 하니 구현되었다. 소프트웨어프..

[자료구조] max heap 응용

오랜만에 과제 글이다. 사실 과제가 중간에 있었는데 귀찮아서 안 썼다. 소프트웨어 프로젝트 과제를 여기 올리기에는 아직 안 끝나서... 자료구조만 올려보겠다. 누군가 이 글을 보고 있기는 한 지 모르겠지만, 난 코딩을 잘 못하므로 피드백을 환영합니다. 뭐든 더 효율적인 코딩은 있기 마련이니까요. 과제 제출일은 5/29이다. (지연 제출일까지 포함한 날짜이다.) 이후 공개로 전환할 예정이다. 사실 나도 오늘 한 거라 좀 양심이 없는 것 같기도 하고. 문제는 다음과 같다. 어떤 식당에 식탁 크기가 2인용과 4인용 두 종류가 있다고 하자. 고객으로는 개인고객과 단체고객 두 유 형이 있다. 고객은 개인 (즉, 1명) 또는 단체 (2명 또는 3명 또는 4명까지로 한정)로 와서 인원수가 충분 한 식탁이 빌 때까지 ..

[자료구조] Family tree 구현하기

컨닝 방지를 위해 과제 제출 기한이 모두 끝난 후에 공개 포스팅으로 전환할 생각이다. 이 과제의 마감일은 (지연 제출 마감일까지 포함한 날짜이다) 5/21이다. 실세계의 family tree를 구성하는 부모와 자식 관계를 입력받아 이를 binary tree에 저장하고 출력하는 프로그램을 아래와 같이 작성하시오. (a) 프로그램 실행이 시작되면 명령어 prompt “>>” 를 출력하고 데이터가 입력되기를 기다린다. (b) 입력 데이터의 형식은 xFy 또는 xMy 이고 enter 키를 눌러서 입력을 완료한다. 각각 x의 아버지는 y, x의 어머니는 y임을 의미한다. 사람의 이름 (즉, x, y 등)은 영어 소문자 1 char라고 가정한다. 동명 이인은 없다고 가정한다. 부모를 나타내는 F와 M은 대문자 1 ..