本文介绍了如何从列表L1中删除要在有序列表L2中找到其位置的节点?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
struct 节点* DeleteNode( struct 节点*头, int pos){ struct 节点* temp =头; int length = LinkedListLength(temp); int i; 如果(pos < = 0 | | | pos > 长度){ printf(" 错误:节点不存在!\ n" ); } 其他 { 如果(pos == 1 ){ 头=头->下一个; } 其他 { for (i = 1 ; i >< pos-1; ++ i){ temp = temp-> next; } temp-> next = temp-> next-> next; } } 返回头; }
解决方案
struct node* DeleteNode(struct node* head, int pos) { struct node* temp = head; int length = LinkedListLength(temp); int i; if(pos <= 0 || pos > length){ printf("ERROR: Node does not exist!\n"); }else{ if(pos == 1){ head = head->next; }else{ for(i = 1; i < pos-1; ++i){ temp = temp->next; } temp->next = temp->next->next; } } return head; }
解决方案
这篇关于如何从列表L1中删除要在有序列表L2中找到其位置的节点?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!