每日一题 382. 链表随机节点

382. 链表随机节点

简单

cpp 复制代码
class Solution {
public:
    int  n;
    ListNode* head;
    Solution(ListNode* head) {
        int cnt = 0;
        this->head = head;
        while(head != 0)
        {
            head = head->next;
            ++cnt;
        }
        n =  cnt;
    }
    
    int getRandom() {
        int idx = rand() % n;
        ListNode* h = head;
        while(idx != 0)
        {
            h = h->next;
            idx--;
        }
        return h->val;

    }
};
相关推荐
老四啊laosi7 小时前
[滑动窗口] 12. 将 x 减到 0 的最小操作数
算法·leetcode·将 x 减到 0 的最小操作数
人道领域9 小时前
【LeetCode刷题日记】513.二叉树左下角值的三种解法:从常规BFS到DFS的优雅之旅
数据结构·算法·leetcode·深度优先·广度优先
吃着火锅x唱着歌9 小时前
LeetCode 503.下一个更大元素II
算法·leetcode·职场和发展
_深海凉_10 小时前
LeetCode热题100-将有序数组转换为二叉搜索树
数据结构·算法·leetcode
sheeta199811 小时前
LeetCode 每日一题笔记 日期:2026.05.17 题目:1306. 跳跃游戏 III
笔记·leetcode
_深海凉_11 小时前
LeetCode热题100-二叉搜索树中第 K 小的元素
算法·leetcode·职场和发展
图码11 小时前
文本两端对齐算法详解:从LeetCode到实际应用
数据结构·图像处理·算法·leetcode·生成对抗网络·面试·职场和发展
老四啊laosi12 小时前
[滑动窗口] 13. 水果成篮
算法·leetcode·滑动窗口·水果成篮
拂拉氏12 小时前
【知识讲解-题目讲解】:二叉树的前、中、后序遍历的三种实现(递归,非递归,Morris遍历)与二叉树oj题讲解(二叉树最近公共祖先,二叉树展开为链表)
数据结构·算法·leetcode·二叉树·遍历
ʚ希希ɞ ྀ13 小时前
打家劫舍----背包dp
数据结构·算法·leetcode