자바 체인 테이블 의 천연 귀속 구조 성질 도문 과 실례 분석
링크
요구:링크 에서 지정 한 모든 요소 값 을 재 귀적 으로 삭제 합 니 다.
그림 분석
만약 에 이런 링크 가 있다 고 가정 하면 다음 과 같다.
분석:링크 의 거시적인 의미(재 귀 는 문제 가 더 작은 서브 과정)를 바탕 으로 분석 했다.
우 리 는 상술 한 체인 시 계 를 하나의 머리 결점 뒤에 더 작은 체인 시 계 를 연결 한 것 으로 볼 수 있다.다음 과 같은 그림 이다.
이때 우 리 는 링크 를 다음 과 같은 링크 구조 로 요약 할 수 있다.
1.머리 결 점+더 작은 링크 를 바탕 으로 더 작은 링크 에서 지정 한 요 소 를 삭제 하고 새로운 링크 인 그림 에서 빨 간 실크 의 사각형 을 얻 을 수 있 습 니 다.
이때 우 리 는 어떻게 붉 은 실의 사각형 코드 의 링크 에 따라 원래 의 문 제 를 해결 하 는 지 에 관심 을 가 져 야 한다.즉,원래 의 머리 결점(머리 결점 e)을 포함 한 상황 이다.
2.두 결점 e 가 삭제 되 어야 하 는 요소 값 인지 판단 한다.만약 에 두 결점 이 삭제 되 지 않 아 도 된다 면 이때 의 링크 구 조 는 두 결점 e+빨간색 사각형 이 고 그렇지 않 으 면 빨간색 사각형 이 며 관련 구조 도 는 다음 과 같다.
코드 구현
package LeetCodeSubject;
/*
*
* */
class Solution3 {
public ListNode removeElements(ListNode head, int val) {
if (head == null)
return null;
ListNode res = removeElements(head.next, val);
if (head.val == val)
return res;
else {
head.next = res;
return head;
}
}
public static void main(String[] args) {
int[] nums = {1, 2, 6, 3, 4, 5, 6};
ListNode head = new ListNode(nums);
System.out.println(head);
ListNode res = (new Solution()).removeElements(head, 6);
System.out.println(res);
}
}
결 과 는 다음 과 같다.자바 알고리즘 과 관련 된 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있 습 니 다.
본 고 에서 말 한 것 이 여러분 의 자바 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.