免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

c++STL模板庫的set和multiset自定義排序函數-創新互聯

c++ STL模板庫的set和multiset自定義排序函數

以set具體說明

網站建設哪家好,找創新互聯!專注于網頁設計、網站建設、微信開發、小程序定制開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了峽江免費建站歡迎大家使用!方法一(強烈推薦寫法)
#include#includeusing namespace std;

struct node
{int x;
    int y;
    
    bool operator<(const node& a) const
    {if (a.x == x)
            return y< a.y;
        return x< a.x;
    }
};
//在 set 里面進行重載,和優先隊列一樣

void run_case()
{sets;
    s.insert(node{1, 1 });
    s.insert(node{1, 1 });
    s.insert(node{1, 2 });
    s.insert(node{1, 3 });
    s.insert(node{2, 2 });
    s.insert(node{2, 3 });

    cout<< s.begin()->x<< " "<< s.begin()->y<< "\n"; // 輸出 1,1
    
}

int main()
{run_case();
	return 0;
}
方法二(一般推薦)
#include#includeusing namespace std;

struct node
{int x;
    int y;
};

class comp
{public:
    bool operator()(const node& a, const node& b) const
    {if (a.x == b.x)
            return a.y< b.y;
        return a.x< b.x;
    }
   
};

void run_case()
{sets;
    s.insert(node{1, 1 });
    s.insert(node{1, 1 });
    s.insert(node{1, 2 });
    s.insert(node{1, 3 });
    s.insert(node{2, 2 });
    s.insert(node{2, 3 });
    cout<< s.begin()->x<< " "<< s.begin()->y<< "\n";
}

int main()
{run_case();
	return 0;
}
方法三(了解就好)
#include#includeusing namespace std;

struct node
{int x;
    int y;
};


bool comp(const node& a, const node& b)
{if (a.x == b.x)
        return a.y< b.y;
    return a.x< b.x;
}

void run_case()
{sets(comp);
    s.insert(node{1, 1 });
    s.insert(node{1, 1 });
    s.insert(node{1, 2 });
    s.insert(node{1, 3 });
    s.insert(node{2, 2 });
    s.insert(node{2, 3 });

    cout<< s.begin()->x<< " "<< s.begin()->y<< "\n";
}

int main()
{run_case();
	return 0;
}

對于multiset也是一樣的用法,可以自行嘗試

參考資料點這里

你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

新聞標題:c++STL模板庫的set和multiset自定義排序函數-創新互聯
文章轉載:http://m.newbst.com/article16/dehgdg.html

成都網站建設公司_創新互聯,為您提供網站維護品牌網站制作、微信小程序、網站制作、響應式網站、網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網頁設計公司