亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

355. Design Twitter / 378. Kth Smallest Element in a Sorted Matrix

2019-11-10 17:09:44
字體:
來源:轉載
供稿:網友

Design Twitter題目描述代碼實現Kth Smallest Element in a Sorted Matrix題目描述代碼實現

355. Design Twitter

題目描述

Design a simplified version of Twitter where users can post tweets, follow/unfollow another user and is able to see the 10 most recent tweets in the user’s news feed. Your design should support the following methods:

postTweet(userId, tweetId): Compose a new tweet.getNewsFeed(userId): Retrieve the 10 most recent tweet ids in the user’s news feed. Each item in the news feed must be posted by users who the user followed or by the user herself. Tweets must be ordered from most recent to least recent.follow(followerId, followeeId): Follower follows a followee.unfollow(followerId, followeeId): Follower unfollows a followee.Example:Twitter twitter = new Twitter();// User 1 posts a new tweet (id = 5).twitter.postTweet(1, 5);// User 1's news feed should return a list with 1 tweet id -> [5].twitter.getNewsFeed(1);// User 1 follows user 2.twitter.follow(1, 2);// User 2 posts a new tweet (id = 6).twitter.postTweet(2, 6);// User 1's news feed should return a list with 2 tweet ids -> [6, 5].// Tweet id 6 should PRecede tweet id 5 because it is posted after tweet id 5.twitter.getNewsFeed(1);// User 1 unfollows user 2.twitter.unfollow(1, 2);// User 1's news feed should return a list with 1 tweet id -> [5],// since user 1 is no longer following user 2.twitter.getNewsFeed(1);

代碼實現

這種方法排名50%。

class Twitter {private: map<int, vector<int>> user_database; // follow map vector<pair<int, int>> post2user; // public: /** Initialize your data structure here. */ Twitter() { } /** Compose a new tweet. */ void postTweet(int userId, int tweetId) { post2user.push_back(make_pair(userId, tweetId)); } /** Retrieve the 10 most recent tweet ids in the user's news feed. Each item in the news feed must be posted by users who the user followed or by the user herself. Tweets must be ordered from most recent to least recent. */ vector<int> getNewsFeed(int userId) { int p_len = post2user.size(); vector<int> res; int f_len = user_database[userId].size(); int count = 0; for(vector<pair<int, int>>::reverse_iterator it = post2user.rbegin(); it != post2user.rend(); it++) { if(count == 10) break; if(it->first == userId) {res.push_back(it->second); count++;} else { for(auto i:user_database[userId]) if(i == it->first) { res.push_back(it->second); count++; break; } } } return res; } /** Follower follows a followee. If the Operation is invalid, it should be a no-op. */ void follow(int followerId, int followeeId) { user_database[followerId].push_back(followeeId); } /** Follower unfollows a followee. If the operation is invalid, it should be a no-op. */ void unfollow(int followerId, int followeeId) { int f_len = user_database[followerId].size(); for(int i = 0; i < f_len; i++) { if(user_database[followerId][i] == followeeId) { user_database[followerId].erase(user_database[followerId].begin() + i); break; } } }};/** * Your Twitter object will be instantiated and called as such: * Twitter obj = new Twitter(); * obj.postTweet(userId,tweetId); * vector<int> param_2 = obj.getNewsFeed(userId); * obj.follow(followerId,followeeId); * obj.unfollow(followerId,followeeId); */

378. Kth Smallest Element in a Sorted Matrix

這道題目我是用歸并排序來求得。

題目描述

Given a n x n matrix where each of the rows and columns are sorted in ascending order, find the kth smallest element in the matrix.

Note that it is the kth smallest element in the sorted order, not the kth distinct element.

Example:matrix = [ [ 1, 5, 9], [10, 11, 13], [12, 13, 15]],k = 8,return 13.

Note: You may assume k is always valid, 1 ≤ k ≤ n2.

代碼實現

這種做法可以擊敗50%的代碼。

class Solution {public: int kthSmallest(vector<vector<int>>& matrix, int k) { int row = matrix.size(); int col = matrix[0].size(); vector<int> ind(row); int res = INT_MAX; while(k) { res = INT_MAX; int rec = 0; for(int i = 0; i < row; i++) { if(ind[i] < col && matrix[i][ind[i]] < res) { res = matrix[i][ind[i]]; rec = i; } } ind[rec]++; k--; } return res; }};

當然這里的思路可以使用隊列來做,這里使用一種叫做優先級隊列的東西,就是會根據自定義的優先級進行插入。

class Solution {public: struct compare { bool operator()(const pair<int,pair<int, int> >& a, const pair<int,pair<int, int> >& b) { return a.first>b.first; } }; int kthSmallest(vector<vector<int>>& arr, int k) { int n=arr.size(),m=arr[0].size(); priority_queue< pair<int,pair<int, int> >, vector<pair<int, pair<int, int> > >, compare > p; for(int i=0;i<n;i++) p.push(make_pair(arr[i][0],make_pair(i,0))); int x=k,ans; while(x--) { int e=p.top().first; int i=p.top().second.first; int j=p.top().second.second; ans=e; p.pop(); if(j!=m-1) p.push(make_pair(arr[i][j+1],make_pair(i,j+1))); } return ans; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色综合久久中文字幕综合网小说| 成人免费看片视频| 91在线观看免费网站| 法国裸体一区二区| 日韩精品免费综合视频在线播放| 精品视频久久久| 亚洲第一级黄色片| 亚洲直播在线一区| 国产色综合天天综合网| 日韩av片电影专区| 午夜免费在线观看精品视频| 国产精品嫩草视频| 亚洲韩国日本中文字幕| 97国产真实伦对白精彩视频8| 欧美亚洲日本网站| 国产精品户外野外| 欧美日韩亚洲一区二区三区| 精品福利免费观看| 久久久久久久久久久人体| 日韩亚洲第一页| 欧美精品做受xxx性少妇| 92国产精品久久久久首页| 欧美大片在线看| 精品国产一区二区三区四区在线观看| 中文字幕久久久av一区| 亚洲国产精品久久久| 亚洲天堂免费视频| 欧美中文字幕精品| 日韩免费av片在线观看| 懂色aⅴ精品一区二区三区蜜月| 亚洲天堂av网| 欧美日韩国产丝袜另类| 91国内产香蕉| 综合激情国产一区| 国产午夜精品全部视频播放| 日韩高清有码在线| 久久久日本电影| 欧美专区在线播放| 中文字幕日韩在线播放| 色阁综合伊人av| 国产精品久久久久久久av大片| 最近更新的2019中文字幕| 亚洲精品欧美一区二区三区| 国产91免费观看| 蜜月aⅴ免费一区二区三区| 国产精品电影久久久久电影网| 欧美精品在线播放| 神马久久久久久| 精品香蕉一区二区三区| 26uuu另类亚洲欧美日本老年| 色www亚洲国产张柏芝| 热99精品里视频精品| 国产精品久久久久久久久久久久久| 国产精品一区二区性色av| 欧美精品免费在线观看| 亚洲欧美激情另类校园| 影音先锋欧美在线资源| 久久免费国产精品1| 91在线视频九色| 午夜精品久久久久久99热| 色噜噜亚洲精品中文字幕| 欧亚精品中文字幕| 亚洲天堂av电影| 精品国产乱码久久久久久天美| www.日本久久久久com.| 国产亚洲免费的视频看| 亚洲第一综合天堂另类专| 久久99久国产精品黄毛片入口| 国产视频丨精品|在线观看| 国产欧美日韩免费看aⅴ视频| 亚洲淫片在线视频| 久久综合久久美利坚合众国| 欧洲亚洲妇女av| 最近2019中文字幕大全第二页| 欧美成人精品不卡视频在线观看| 亚洲精品日产aⅴ| 国产精品电影在线观看| 国语自产精品视频在免费| 中文字幕亚洲在线| 亚洲欧美综合另类中字| 国产v综合ⅴ日韩v欧美大片| 精品国产成人在线| 成人网在线视频| 日韩av资源在线播放| 亚洲欧美成人一区二区在线电影| 国语自产精品视频在线看一大j8| 欧美性69xxxx肥| 国产美女扒开尿口久久久| 亚洲国产美女精品久久久久∴| 国产免费一区二区三区在线能观看| 欧美精品日韩三级| 久久天天躁狠狠躁老女人| 91在线观看免费高清| 欧美在线视频导航| 国产精品老女人视频| 亚洲精品电影网| 中文字幕免费精品一区高清| 亚洲精品理论电影| 亚洲国产精品va| 亚洲国产精品va在线看黑人动漫| 亚洲第一区中文99精品| 欧美在线性视频| 黑人欧美xxxx| 久久精品男人天堂| 欧美激情手机在线视频| 91精品国产99| 欧美重口另类videos人妖| 精品呦交小u女在线| 亚洲电影免费观看高清完整版在线观看| 欧美精品久久久久久久久久| 欧美日韩在线视频一区| 亚洲色图在线观看| 亚洲欧美激情另类校园| 亚洲开心激情网| 成人免费激情视频| 亚洲欧美日韩天堂| 91精品国产高清久久久久久| 69视频在线播放| 国产成人精品免高潮在线观看| 国产精品海角社区在线观看| 亚洲女人被黑人巨大进入| 久久男人的天堂| 日韩欧美中文字幕在线观看| 亚洲福利小视频| 91高潮精品免费porn| 中文字幕亚洲激情| 成人久久18免费网站图片| 成人精品一区二区三区| 亚洲永久在线观看| 国产欧美日韩亚洲精品| 国产精品99免视看9| 国产欧美一区二区三区久久| 日韩中文字幕av| 国产精品欧美激情在线播放| 欧美日韩国产一区二区三区| xxx一区二区| 国产99久久久欧美黑人| 久久久久久久国产| 欧美性开放视频| 久久久www成人免费精品张筱雨| 欧美成人午夜激情在线| 欧美成在线观看| 中文字幕国产精品久久| 久久精品国产v日韩v亚洲| 国产精品免费久久久久久| 亚洲精品美女视频| 一区二区av在线| 亚洲最新视频在线| 欧美激情一级精品国产| 国产a级全部精品| 久久久国产精品免费| 在线免费观看羞羞视频一区二区| 国产精品久久色| 91免费版网站入口| 日韩精品一二三四区| 精品成人69xx.xyz| 亚洲香蕉av在线一区二区三区| 国产精品久久9| 久久久这里只有精品视频| 美女视频久久黄| 91精品国产91久久久| 日本欧美一级片| 国产精品久久久久久久久久久新郎| 欧美亚洲另类激情另类|