zoukankan      html  css  js  c++  java
  • STL 小白学习(7) list

    #include <iostream>
    using namespace std;
    #include <list>
    
    
    void printList(list<int>& mlist) {
        
        for (list<int>::iterator it = mlist.begin(); it != mlist.end(); it++) {
            cout << *it << " ";
        }
        cout << endl;
    
    
    }
    //初始化
    void test01() {
        list<int> myList;
        list<int> myList2(10, 1);//有参构造
        list<int> list3(myList2);
        //有参构造
        list<int>mlist4(myList2.begin(), myList2.end());
    
        //打印
        for (list<int>::iterator it = list3.begin(); it != list3.end(); it++) {
            cout << *it << " ";
        }
        cout << endl;
    }
    
    //list 插入删除
    void test02() {
        list<int> mlist;
        mlist.push_back(100);
        mlist.push_front(15);
        //插入
        mlist.insert(mlist.begin(), 300);
        //在指定位置插入
        list<int>::iterator it = mlist.begin();
        it++;
        mlist.insert(it, 300);
        //在尾部插入
        mlist.insert(mlist.end(), 300);
        //删除
        mlist.pop_back();
        mlist.pop_front();
        //删除区间
        mlist.erase(mlist.begin(), mlist.end());
        mlist.clear();
    
        //.remove 删除
        mlist.push_front(100);
        mlist.push_back(15);
        mlist.push_front(15);
        mlist.remove(15);//删掉所有匹配的元素
        printList(mlist);
    
    
    }
    
    // size empty略
    
    //赋值操作
    void test03() {
        list<int> mlist;
        mlist.assign(10, 10);
    
        list<int> mlist2;
        mlist2 = mlist;
    
        mlist2.swap(mlist);
    }
    
    //排序反转
    void test04() {
        list<int> mlist = { 15,54,564,564,5646,5465,46, };
        mlist.reverse();
        printList(mlist);
    }
    
    bool myCompare(int a, int b) {
        return a > b;
    }
    //排序
    void test05() {
        list<int> mlist = { 15,54,564,564,5646,5465,46, };
        mlist.sort();//基础数据类型 默认排序 从小到大
        printList(mlist);
        mlist.sort(myCompare);//自己写回调函数 从大到小排序
        printList(mlist);
    
        //算法 sort 支持可随机访问容量
        
    }
    
    int main() {
        test05();
    }
  • 相关阅读:
    Longest Common Substring
    未完成 Anagrams
    strStr
    vim的学习笔记
    Compare Strings
    Two Strings Are Anagrams
    KMP算法
    [ 力扣活动0314 ] 300. 最长上升子序列
    [ 力扣活动0317 ] 1160. 拼写单词
    [ 力扣活动0313 ] 169. 多数元素
  • 原文地址:https://www.cnblogs.com/likeghee/p/10180369.html
Copyright © 2011-2022 走看看