단순 연결 리스트의 방문 연산 방문 연산 -> 리스트 상의 노드를 순차적으로 방문 1) 반복 기법 void display(LIstNode* head) { ListNode* p = head; while (p != NULL) { printf("%d->", p->data); p = p->link; } printf("/n") } //출력문 예시 // 1->2->3->5->10-> p에 head 값을 준다. p가 NULL에 도달할때까지 while문을 반복해 리스트 안의 모든 데이터를 탐색하여 출력한다. 2) 순환 기법 void display_recur(LIstNode* head) { ListNode* p = head; if (p != NULL) { printf("%d->", p->data); display_rec..
배열로 다항식의 덧셈을 구현할 때 2가지의 선택지가 있다. 1. 모든 차수에 대한 계수 값을 배열로 저장 2. 하나의 다항식을 하나의 배열로 표현 이번 포스팅에는 첫번째 방식으로 구현한 코드를 분석해볼 것이다. 모든 차수에 대한 계수 값을 저장하는 방식의 장단점 장점 같은 차수의 계수를 쉽게 찾을 수 있으므로 알고리즘이 간단하다. 다항식의 각종 연산이 간단해진다 단점 대부분의 항의 계수가 0이라면 메모리 낭비가 심하다. 코드 분석 #include #define MAX(a,b) (((a)>(b)) ? (a) : (b)) #define MAX_DEGREE 101 typedef struct { int degree; //차수 float coef[MAX_DEGREE]; //계수 }polynomial; polyno..
취미로 복린이 생활을 한지 4개월... 장비 욕심이 점점 생겨 복싱화를 구입하게 됐다.. 처음에는 아디다스 복서호그2를 구매했는데 밑창이랑 신발이랑 본드로 붙어있는 구조가 맘에 안들고 퀄리티가 생각보다 떨어져서 환불을 했다ㅠㅠ 그리하여 구매한 나이키 마초마이2 스페셜 에디션!! 앞태랑 옆태가 상당히 이쁘다... 마초마이2 색상은 여러가지가 있는데 좀 밋밋하기도 하고 아무래도 살 겸 이쁜거 사고 싶어서 스페셜 에디션으로 구입했다. 국내 배송 매물을 구한다면 약 15만원에 구매할 수 있다. 하지만 국내 배송으로 구하는 것이 하늘의 별따기 라는 것... 본인은 해외배송으로 17만원에 구매했다. (13만원 + 배송비 4만원) 첫날 신어본 후기 복싱화 자체를 처음 신어봐서 매우 어색하고 오히려 발의 위치가 바닥이..
연결리스트 데이터와 링크를 저장하는 노드를 이용하여 기차처럼 노드를 연결시켜 데이터를 저장하는 것이다. 리스트의 항목들을 노드라고 하는 곳에 분산하여 저장한다. 노드의 구조는 데이터필드, 링크필드로 구성되어있다. 데이터필드: 리스트의 원소, 즉 데이터 값을 저장하는 장소 링크필드: 다른 노드의 주소값을 저장하는 장소 연결 리스트의 장점 삽입, 삭제가 용이하다. 연속된 메모리 공간이 필요 없다. 크기 제한이 없다. 연결 리스트의 단점 구현이 복잡하다. 오류가 발생하기 쉽다. 연결 리스트의 구조 노드: 데이터필드 + 링크 필드 헤드 포인터: 리스트의 첫번째 노드를 가리키는 변수 연결 리스트의 종류 단순 연결 리스트 원형 연결 리스트 이중 연결 리스트 단순 연결리스트의 개념 하나의 링크 필드를 이용하여 연결한..