数据结构和算法分析数据结构与算法

Leetcode-876 链表的中间结点]

2021-09-20  本文已影响0人  itbird01

876. 链表的中间结点

解题思路

1.第一次循环,获取size
2.第二次循环,根据[size/2]向上取整,获取值

解题遇到的问题

后续需要总结学习的知识点

##解法1
class Solution {
    /**
     * 1.第一次循环,获取size
     * 2.第二次循环,根据[size/2]向上取整,获取值
     */
    public ListNode middleNode(ListNode head) {
        ListNode temp = head;
        int size = 1;
        while (temp.next != null) {
            size++;
            temp = temp.next;
        }

        temp = head;
        for (int i = 0; i < Math.ceil(size / 2); i++) {
            temp = temp.next;
        }
        return temp;
    }

    public class ListNode {
        int val;
        ListNode next;
        ListNode() {
        }
        ListNode(int val) {
            this.val = val;
        }
        ListNode(int val, ListNode next) {
            this.val = val;
            this.next = next;
        }
    }
}
上一篇下一篇

猜你喜欢

热点阅读