게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

[과제 3-3] leaf 확인 질문

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2018)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
정윤수



가입: 2018년 9월 11일
올린 글: 2

올리기올려짐: 2018년10월17일 21:58    주제: [과제 3-3] leaf 확인 질문 인용과 함께 답변

leaf는 왼쪽, 오른쪽 자식을 갖지 않고 따라서 {val := n}으로 구현될 것 같은데요.
이 때 tree를 입력받았을 때 leaf인지 혹은 양쪽 자식을 같는 tree인지를 구분해주고 싶습니다.
이 경우에 레코드 타입은 주소에서 값으로 가는 타입이기 때문에
let proc isLeaf(tree) = (tree = leaf(nodeVal(tree))) 과 같이 구현할 수도 없습니다.

만약에 leaf에 추가적인 구현을 더해주지 않거나, k.ml에서 레코드 필드에 접근하는 함수를 커스터마이징 하지 않고 leaf와 Tree를 구분할 수 있을까 궁금합니다.
그리고 만약 leaf에 추가적인 구현을 더해준다면, 전체적으로 빈 양쪽 자식을 가지는 경우보다 더 나은 구현일지가 의문이 들어서 질문드립니다.

1. 결론은 어떻게 leaf와 Tree를 구분할 수 있을까요.
위로
사용자 정보 보기 비밀 메시지 보내기
로파스
Site Admin


가입: 2012년 9월 9일
올린 글: 280

올리기올려짐: 2018년10월18일 10:05    주제: 인용과 함께 답변

가장 간단한 방법은 레코드 필드에 treetype 필드를 추가해서 leaf인지 tree인지를 구별하는 것이겠지요. 예를들자면, treetype값이 0이면 leaf, 1이면 트리라고 생각하시면 될듯합니다.

-조교 드림.
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2018) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay