| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
이승중
가입: 2010년 6월 22일 올린 글: 561
|
올려짐: 2010년11월22일 12:21 주제: 숙제7: 두개의 StringQ가 같다는 것은 |
|
|
- 큐 안의 원소 개수가 같아야 하고
- pop 할때 나오는 순서가 동일해야 합니다.
위 조건만 만족하면
두 스트링 큐는 어떻게 만들어졌냐에 관계없이 같다고 하겠습니다.
이승중 가 2010년12월3일 15:41에 수정함, 총 1 번 수정됨 |
|
| 위로 |
|
 |
김현우
가입: 2010년 9월 6일 올린 글: 56
|
올려짐: 2010년11월22일 13:26 주제: |
|
|
deq가 돌려주는 타입이 queue가 아닌 element * queue 인데 StringQ.queue 의 우측 리스트에 원소가 들어올 경우가 있을 수 있는건가요?
enq로는 emptyq에서 시작하여 왼쪽 리스트에만 원소가 쌓이고 중간중간 deq를 해도 그 리턴타입이 queue가 아니므로 deq의 결과에 다시 enq를 하는 식의 작업은 수행할 수가 없습니다.
그렇다면 StringQ.queue는 언제나 왼쪽 리스트에만 원소가 들어있는 형태일텐데, StringQQ에서 이를 받아들일 때 예를 들어
| 코드: | | (["a";"b"], ["c"]) 와 (["a"],["c";"b"]) |
를 같은 queue라고 판단하게 하는 작업을 할 필요가 있는 것인지 궁금합니다. |
|
| 위로 |
|
 |
이승중
가입: 2010년 6월 22일 올린 글: 561
|
올려짐: 2010년11월22일 13:42 주제: |
|
|
| 인용: | | deq의 결과에 다시 enq를 하는 식의 작업 |
을 할 수 있습니다..
| 코드: | let elem, q2 = StringQ.deq q1
let q3 = StringQ.enq (q2, "hi")
|
|
|
| 위로 |
|
 |
|