刷题 | tips | 持续更新

本文探讨了C++中非静态成员函数作为排序比较函数的问题,强调了将cmp函数定义为static的必要性。同时,介绍了如何使用sort对string排序以及LRU缓存模拟和多有序链表合并的算法,其中涉及优先队列的应用。这些内容对于提升C++编程技能和理解数据结构与算法有重要作用。
摘要由CSDN通过智能技术生成

1. a/2: a>>2; a/(-2): -(a>>2)

2. sort第三个参数是一个函数指针,然而cmp函数是一个非静态成员函数,非静态成员函数指针和普通函数指针是有区别的。 需要把cmp定义为static.

class Solution {
public:
    static int cmp (int a, int b) {
        return a < b;
    }
    vector<vector<int>> threeSum(vector<int>& nums) {
        vector<vector<int>> ans;
        sort(nums.begin(), nums.end(), cmp);
        return ans;
    }
};

3. 对string用sort排序时,cmp里面的传参是char 不是string

4. LRU模拟使用链表

5. 多个有序链表的合并:使用优先队列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值