кодесурса

Упражнения на Java: удаление n-го элемента из конца данного списка

script1adsense2code
script1adsense3code

Java Basic: упражнение 145 с решением

Напишите программу на Java для удаления n-го элемента из конца данного списка.

Иллюстрированная презентация:


Пример решения:

Java-код:

import java.util.*;
public class Solution {
    public static void main(String[] args) {
        ListNode h = new ListNode(1);
        h.next = new ListNode(2);
        h.next.next = new ListNode(3);
        h.next.next.next = new ListNode(4);
        h.next.next.next.next = new ListNode(5);
		ListNode o = h;
		System.out.println("Original node:");
		while (o != null) {
            System.out.print(o.val + " ");
            o = o.next;
        }
        System.out.println("\nAfter removing 2nd element from end:");
		ListNode head = removeNthFromEnd(h, 2);
    
	    while (head != null) {
            System.out.print(head.val + " ");
            head = head.next;
        }
	
    }
     public static ListNode removeNthFromEnd(ListNode head, int n) {
        ListNode p = head;
        int size = 0;
        while (p != null) {
            size++;
            p = p.next;
        }
        if (n == size) {  
            head = head.next;
        } else {
            int index = size - n;
            ListNode t = head;
            while (index > 1) {
                t = t.next;
                index--;
            }
            t.next = t.next.next;
        }
        return head;
    }
}
class ListNode {
    int val;
    ListNode next;
    ListNode(int val) {
        this.val = val;
        this.next = null;
    }
}

Пример вывода:

 Исходный узел:
1 2 3 4 5 
После удаления 2-го элемента с конца:
1 2 3 5 

Блок - схема:

«Блок-схема:

Редактор кода Java:

Внесите свой код и комментарии через Disqus.

Предыдущий: Напишите программу на Java, чтобы удалить все вхождения указанного значения в заданном массиве целых чисел и вернуть новую длину массива.
Далее: Напишите программу на Java для преобразования отсортированного массива в двоичное дерево поиска. Поддерживать минимальную высоту дерева.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code