Dada una lista enlazada, imprima los Nodes alternativos de la lista enlazada.
Ejemplos:
C++
// CPP code to print Alternate Nodes #include <iostream> using namespace std; /* Link list node */ struct Node { int data; struct Node* next; }; /* Function to get the alternate nodes of the linked list */ void printAlternateNode(struct Node* head) { int count = 0; while (head != NULL) { // when count is even print the nodes if (count % 2 == 0) cout << head->data << " "; // count the nodes count++; // move on the next node. head = head->next; } } // Function to push node at head void push(struct Node** head_ref, int new_data) { struct Node* new_node = (struct Node*)malloc(sizeof(struct Node)); new_node->data = new_data; new_node->next = (*head_ref); (*head_ref) = new_node; } // Driver code int main() { /* Start with the empty list */ struct Node* head = NULL; /* Use push() function to construct the below list 8 -> 23 -> 11 -> 29 -> 12 */ push(&head, 12); push(&head, 29); push(&head, 11); push(&head, 23); push(&head, 8); printAlternateNode(head); return 0; } // This code is contributed by shubhamsingh10
C
// C code to print Alternate Nodes #include <stdio.h> #include <stdlib.h> /* Link list node */ struct Node { int data; struct Node* next; }; /* Function to get the alternate nodes of the linked list */ void printAlternateNode(struct Node* head) { int count = 0; while (head != NULL) { // when count is even print the nodes if (count % 2 == 0) printf(" %d ", head->data); // count the nodes count++; // move on the next node. head = head->next; } } // Function to push node at head void push(struct Node** head_ref, int new_data) { struct Node* new_node = (struct Node*)malloc(sizeof(struct Node)); new_node->data = new_data; new_node->next = (*head_ref); (*head_ref) = new_node; } // Driver code int main() { /* Start with the empty list */ struct Node* head = NULL; /* Use push() function to construct the below list 8 -> 23 -> 11 -> 29 -> 12 */ push(&head, 12); push(&head, 29); push(&head, 11); push(&head, 23); push(&head, 8); printAlternateNode(head); return 0; }
Java
// Java code to print Alternate Nodes class GFG { /* Link list node */ static class Node { int data; Node next; }; /* Function to get the alternate nodes of the linked list */ static void printAlternateNode( Node head) { int count = 0; while (head != null) { // when count is even print the nodes if (count % 2 == 0) System.out.printf(" %d ", head.data); // count the nodes count++; // move on the next node. head = head.next; } } // Function to push node at head static Node push( Node head_ref, int new_data) { Node new_node = new Node(); new_node.data = new_data; new_node.next = (head_ref); (head_ref) = new_node; return head_ref; } // Driver code public static void main(String args[]) { /* Start with the empty list */ Node head = null; /* Use push() function to con the below list 8 . 23 . 11 . 29 . 12 */ head = push(head, 12); head = push(head, 29); head = push(head, 11); head = push(head, 23); head = push(head, 8); printAlternateNode(head); } } // This code is contributed by Arnab Kundu
Python3
# Python3 code to print Alternate Nodes # Link list node class Node : def __init__(self, data = None) : self.data = data self.next = None # Function to push node at head def push(self, data) : new = Node(data) new.next = self return new # Function to get the alternate # nodes of the linked list def printAlternateNode(self) : head = self while head and head.next != None : print(head.data, end = " ") head = head.next.next # Driver Code node = Node() # Use push() function to construct # the below list 8 -> 23 -> 11 -> 29 -> 12 node = node.push(12) node = node.push(29) node = node.push(11) node = node.push(23) node = node.push(8) node.printAlternateNode()
C#
// C# code to print Alternate Nodes using System; class GFG { /* Link list node */ public class Node { public int data; public Node next; }; /* Function to get the alternate nodes of the linked list */ static void printAlternateNode( Node head) { int count = 0; while (head != null) { // when count is even print the nodes if (count % 2 == 0) Console.Write(" {0} ", head.data); // count the nodes count++; // move on the next node. head = head.next; } } // Function to push node at head static Node push( Node head_ref, int new_data) { Node new_node = new Node(); new_node.data = new_data; new_node.next = (head_ref); (head_ref) = new_node; return head_ref; } // Driver code public static void Main(String []args) { /* Start with the empty list */ Node head = null; /* Use push() function to con the below list 8 . 23 . 11 . 29 . 12 */ head = push(head, 12); head = push(head, 29); head = push(head, 11); head = push(head, 23); head = push(head, 8); printAlternateNode(head); } } // This code has been contributed by 29AjayKumar
Publicación traducida automáticamente
Artículo escrito por shrikanth13 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA