iT邦幫忙

2021 iThome 鐵人賽

DAY 11
0

思路

想說list最長的element,就會是center

程式碼

class Solution {
public:
    int findCenter(vector<vector<int>>& edges) {
        vector<vector<int>> adjlist(100001);
        
        for (auto el: edges) {
            adjlist[el[0]].push_back(el[1]);
            adjlist[el[1]].push_back(el[0]);
        }    
        
        int longest = 0, node = -1;
        for (int i = 0; i < adjlist.size(); i++) {
            int curr_length = adjlist[i].size();
            if (curr_length > longest) {
                longest = curr_length;
                node = i;
            }
        }
        return node;
    }
};

 
 
 

更新:來反省下Leetcode: 1791. Find Center of Star Graph 怎麼可以跑這麼慢

(掩面


 
看了Discussion,「中心點應該存在在所有邊裡」,這句話好有道理啊,題目的條件並不是要你找最多邊連著的那個點,而是已經清楚定義了,今天進來的所有Input,都會是星狀圖這樣的形式,那麼最佳解就應該是根據這句話才對。
 
 

參考:
https://leetcode.com/problems/find-center-of-star-graph/submissions/


上一篇
Leetcode: 1971. Find if Path Exists in Graph
下一篇
DIY的規劃
系列文
來解數學跟刷圖論跟幾何程式題或者我突然想研究的主題33
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言