728x90
반응형
강의 날짜: 11/20/2021
시청 강의: 은근히 어려운 자료구조 : 링크드 리스트(3)
오늘 강의도 여전히 링크드 리스트이다. 링크드 리스트 강의가 하나 더 남았던데 이번 주는 링크드 리스트만 한 기분이다 ㅋㅋ 오늘 나간 강의도 더블리 링크드 리스트에 관련된 내용이라 어제 미리 다 정리해두었기 때문에 오늘은 원형 연결 리스트에 대해 정리해보려고 한다.
원형 링크드리스트
기본 구조
public class CicularLinkedList{
Node head; // head of list
class Node {
int data;
Node next;
Node(int d) { data = d; } //next는 null로 초기화된다
}
}
비어있는 리스트에 노드 추가
static Node addToEmpty(Node last, int data)
{
if (last != null) //last 가 null -> circular linked list는 null이 없기때문에 비었단 소리다
return last;
// Creating a node dynamically
Node temp =
(Node*)malloc(sizeof(Node));
temp.data = data;
last = temp;
temp.next = last; ///리스트가 비어있어서 추가 후 노드가 하나뿐이다-> 포인터가 본인에게 향하도록 설정
return last;
}
맨 앞 노드 추가
static Node addBegin(Node last, int data)
{ //비어다면, 위에 작성한 <빈 노드에 노드추가>에게 넘겨준다
/*넘겨주는이유: circularlist는 포인터가 null값을 가지지 않기 때문에
*비어있다면 자신에게 포인터를 향하게 해줘야한다 */
if (last == null)
return addToEmpty(last, data);
Node temp = new Node();
temp.data = data;
temp.next = last.next;
last.next = temp;
return last;
}
code reference: Geeks for Geeks 내일마저 링크드 리스트 강의를 끝내고 남은 원형 리스트를 정리해보도록 하겠다.
패스트캠퍼스 환급 챌린지 바로가기👉 https://bit.ly/3FVdhDa
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
728x90
반응형
'취준 > FASTCAMPUS' 카테고리의 다른 글
패스트캠퍼스 챌린지 22일차 (0) | 2021.11.22 |
---|---|
패스트캠퍼스 챌린지 21일차 (0) | 2021.11.21 |
패스트캠퍼스 챌린지 19일차 (0) | 2021.11.19 |
패스트캠퍼스 챌린지 18일차 (0) | 2021.11.18 |
패스트캠퍼스 챌린지 17일차 (0) | 2021.11.17 |