题解 | #删除链表的节点#

删除链表的节点

http://www.nowcoder.com/practice/f9f78ca89ad643c99701a7142bd59f5d

import java.util.*;

/*

  • public class ListNode {
  • int val;
  • ListNode next = null;
  • public ListNode(int val) {
  • this.val = val;
    
  • }
  • } */

public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param head ListNode类 * @param val int整型 * @return ListNode类 */ public ListNode deleteNode (ListNode head, int val) { if(head == null) return null; if(head.next == null) { return null; }

	ListNode temp1 = head;
	ListNode temp2 = head;
	while(temp1.next != null) {
		if(temp1 == head) {
			if(temp1.val == val) {
				return head.next;
			}else {
				temp1 = temp1.next;
			}
		}else {
			if(temp1.val == val) {
				temp2.next = temp1.next;
				temp1.next = null;
				return head;
			}else {
				temp1 = temp1.next;
				temp2 = temp2.next;
			}
		}
		
	}
	if(temp1.next == null) {
		if(temp1.val == val) {
			temp2.next = null;
			return head;
		}else {
			return null;
		}
	}
    return null;
}

}

全部评论

相关推荐

码农索隆:以下是我以我微薄的认知提供的建议: 1.考个教师资格证,去当体育考试。 2.去健身房当健身教练(因为在我印象里面体育生身材都不错)。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务