이중으로 연결된 목록

327 views

Published on

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
327
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

이중으로 연결된 목록

  1. 1. 이중으로 연결된 목록<br />아꿈싸<br />이재정<br />
  2. 2. 이중 링크드 리스트<br />RLINK(LLINK(X)) = LLINK(RLINK(X)) = X<br />두번째 것이 선호할만한 주된 이유다.<br />
  3. 3. 이중 링크드 리스트<br />
  4. 4. 노드 제거<br />RLINK(LLINK(X)) <- RLINK(X)<br />
  5. 5. 노드제거<br />LLINK(RLINK(X)) <- LLINK(X)<br />
  6. 6. 노드제거<br />AVAIL <= X<br />
  7. 7. 친구추가<br />
  8. 8. 친구추가<br />P<=AVAIL, LLINK(P) <- X<br />
  9. 9. 친구추가<br />RLINK(P) <- RLINK(X)<br />
  10. 10. 친구추가<br />LLINK(RLINK(X)) <- P<br />
  11. 11. 친구추가<br />LLINK(RLINK(X)) <- P<br />
  12. 12. 칼텍(Caltech)의 엘리베이터<br />
  13. 13. 엘리베이터 시뮬레이션<br />
  14. 14. 엘리베이터 변수<br />CALLUP[ j], 0 <= j <= 4<br />CALLDOWN[ j], 0 <= j <= 4<br />CALLCAR[ j], 0 <= j <= 4<br />FLOOR<br />STATE, {GOINGUP, GOINGDOWN, NEUTRAL}<br />ELEVATOR, 엘레베이터에 타고있는 이용자 스택<br />QUEUE[ j], 0 <= j <= 4, j층에서 기다리는 이용자 대기열<br />
  15. 15. 엘리베이터 변수<br />D1, 사람들이 승강기에 타고 내리는 동안이 아니면 0인 변수<br />D2, 승강기가 30초 이상 움직이지 않고 한 층에 머물러 있으면 0이 되는 변수<br />D3, 문이 열렸지만 아무도 타고 내리지 않는 동안이 아니면 0인 변수<br />
  16. 16. 이용자 변수<br />IN, 이용자가 시스템에 들어온 층<br />OUT, 이용자가 가고자 하는 층<br />GIVEUPTIME<br />INTERTIME<br />
  17. 17. 이용자 코루틴<br />U1(진입, 초기값설정) -> U2(신호대기, CALLUP/DOWN 설정 혹은 E3, E4로 넘어감) -> U3(대기열진입, QUEUE[IN]에 유저 삽입, 엘레베이터가 오면 E4에의해 U5로 넘어감) -> U4(대기, Giveup시간만큼 대기 QUEUE[IN]에서 제거) -> U5(타기, CALLCAR 설정) -> U6(내리기, ELEVATOR에서 제거)<br />
  18. 18. 엘리베이터 코루틴<br />E1, E2, E3, E4, E5, E6, E7, E8, E9<br />
  19. 19. 스케쥴링의 필요성<br />E4, E5, E9가 동시에 수행될 수 도 있다.<br />링크드 리스트를 이용해서 스케쥴링을 구현한다.<br />
  20. 20. 자료구조<br />
  21. 21. 끝<br />감사합니다. ^^;<br />

×