Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MMM {
- public static void main(String[] args) {
- DLNode ff = createDLNode(1);
- DLNode neww = createDLNode(2);
- ff = addFirst(ff, neww);
- neww = createDLNode(2);
- ff = addFirst(ff, neww);
- neww = createDLNode(3);
- ff = addFirst(ff, neww);
- neww = createDLNode(4);
- ff = addFirst(ff, neww);
- neww = createDLNode(2);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- neww = createDLNode(2);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- neww = createDLNode(5);
- ff = addFirst(ff, neww);
- printList(ff);
- ff = deleteNotPrime(ff);
- System.out.println("Delete not prime");
- printList(ff);
- }
- public static DLNode addFirst(DLNode h, DLNode newNode) {
- if(newNode == null) return h;
- newNode.prev = null;
- newNode.next = h;
- if (h != null) {
- h.prev = newNode;
- }
- return newNode;
- }
- //Принт списка
- private static void printList(DLNode list) {
- if(list == null) {
- System.out.println("Your list is empty.");
- }else {
- while(list != null) {
- System.out.printf(list.data + " ");
- list = list.next;
- }
- }
- System.out.println("");
- }
- //Просто создание узла
- private static DLNode createDLNode(int data) {
- DLNode newNode = new DLNode();
- newNode.data = data;
- newNode.next = null;
- newNode.prev = null;
- return newNode;
- }
- public static DLNode deleteNotPrime(DLNode head) {
- if(head == null) {
- System.out.println("Error");
- return null;
- }
- DLNode pres = head;
- while(pres != null) {
- if(!Prime(pres.data)) {
- DLNode tmp = pres.next;
- head = remove(head, pres);
- pres = tmp;
- }
- else {
- pres = pres.next;
- }
- }
- return head;
- }
- //Удаление элемента
- public static DLNode remove(DLNode h, DLNode x) {
- if(h == null) return h;
- // check if x is the head
- if (x.prev != null) {
- x.prev.next = x.next;
- } else {
- h = h.next;
- }
- // check if x is the tail
- if (x.next != null) {
- x.next.prev = x.prev;
- }
- return h;
- }
- //ПРОСТЕ ЧИСЛО
- public static boolean Prime(int val) {
- if(val <= 1) return false;
- boolean isPrime = true;
- for(int i = 2; i <= Math.sqrt(val) && isPrime; i++) {
- if(val % i == 0) isPrime = false;
- }
- return isPrime;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement