0xSEUNGJU
CodeMonkie
0xSEUNGJU
전체 방문자
오늘
어제
  • 분류 전체보기 (15)
    • linux (8)
    • web (2)
    • android (0)
    • data science (1)
    • algorithms (3)
    • 보안 (1)
    • hardware (0)

블로그 메뉴

  • github
  • playground

공지사항

인기 글

태그

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
0xSEUNGJU

CodeMonkie

[Leetcode] 237. Delete Node in a Linked List
algorithms

[Leetcode] 237. Delete Node in a Linked List

2022. 10. 13. 20:10

Problem

단일 연결 목록 헤드가 있고 그 안의 노드를 삭제하려고 한다.

삭제할 노드가 제공된다. 헤드의 첫 번째 노드에 대한 액세스 권한이 부여되지 않는다.

연결 목록의 모든 값은 고유하며 주어진 노드가 연결 목록의 마지막 노드가 아님이 보장된다.

주어진 노드를 삭제한다. 노드를 삭제한다고 해서 메모리에서 제거하는 것은 아니다.

 

  • 주어진 노드의 값은 연결 리스트에 존재하지 않아야 한다.
  • 연결 목록의 노드 수는 1씩 감소해야 한다.
  • 이전의 모든 값 node은 같은 순서로 되어 있어야 한다.
  • 이후의 모든 값 node은 같은 순서여야 한다.
  • 입력의 경우 전체 연결 목록 head과 제공할 노드를 제공해야 한다. 목록의 마지막 노드가 아니어야 하며 목록의 실제 노드여야 한다.
  • 연결 목록을 만들고 노드를 함수에 전달할 것이다.
  • 출력은 함수를 호출한 후 전체 목록이 된다.

 

Example

Input: head = [4,5,1,9], node = 5
Output: [4,1,9]
Explanation: 값이 5인 두 번째 노드가 주어지면 연결 목록은 함수를 호출한 후 4 -> 1 -> 9가 되어야 한다.

 

Input: head = [4,5,1,9], node = 1
Output: [4,5,9]
Explanation: 값이 1인 세 번째 노드가 주어지고 연결 목록은 함수를 호출한 후 4 -> 5 -> 9가 되어야 한다.

 

Constraints

  • 주어진 목록의 노드 수가 [2, 1000] 범위 내에 있다.
  • -1000 <= Node.val <= 1000
  • 목록에 있는 각 노드의 값은 고유 하다.
  • 삭제할 node 항목은 목록 에 있으며 꼬리 노드 가 아니다.

 

Solution

class Solution:
    def deleteNode(self, node):
        """
        :type node: ListNode
        :rtype: void Do not return anything, modify node in-place instead.
        """
        node.val = node.next.val
        node.next = node.next.next

'algorithms' 카테고리의 다른 글

[Leetcode] 976. Largest Perimeter Triangle  (0) 2022.10.12
[Leetcode] 334. Increasing Triplet Subsequence  (0) 2022.10.11
    'algorithms' 카테고리의 다른 글
    • [Leetcode] 976. Largest Perimeter Triangle
    • [Leetcode] 334. Increasing Triplet Subsequence
    0xSEUNGJU
    0xSEUNGJU

    티스토리툴바