양 방향 링크 질서 있 게 삽입

오늘 은 본의 아니 게 데이터 구 조 를 펼 쳤 는데 갑자기 양 방향 링크 를 쓸 어 버 리 고 코드 코드 코드 를 다시 연습 하려 고 했다.3, 2 분 만 에 다 써 서 운행 할 때 어색 하 다.출력 이 없 음 을 발 견 했 습 니 다.그래서 저 는 debug 를 해 보 았 습 니 다. 매번 에 삽 입 된 요소 의 pre 가 요소 자체 가 디 버 깅 을 거 친 후에 pre 가 비어 있다 는 것 을 알 게 되 었 습 니 다. 저 는 논 리 를 다시 한 번 정리 해 야 한 다 는 것 을 깨 닫 고 약간 수정 하여 테스트 를 통 과 했 습 니 다.
//       
    public void addOrder(Hero hero){
     
        Hero temp = head;
        boolean flag = false;
        boolean flag1 = false;
        while(true){
     
            if(temp.next == null){
     //                
                flag1 = true;
                break;
            }
            if(temp.next.no == hero.no){
     //         
                flag = true;
                break;
            }else if(hero.no<temp.next.no){
     
                break;
            }
            temp = temp.next;
        }
        if(flag){
     
            System.out.println("     ");
        }else if(flag1){
     
            // temp    
            hero.next = temp.next;
            temp.next = hero;
            hero.pre = temp;
            flag1 = false;
        }else{
     // temp    
                hero.next = temp.next;
                temp.next.pre = hero;
                temp.next = hero;
                hero.pre = temp;
        }
    }

큰 사내 들 이 계속 지적 하 는 것 을 환영 합 니 다.

좋은 웹페이지 즐겨찾기