当前位置:网站首页>Sword finger offer II 116 Number of provinces - spatial complexity O (n), time complexity O (n)
Sword finger offer II 116 Number of provinces - spatial complexity O (n), time complexity O (n)
2022-04-23 18:53:00 【Mr Gao】
The finger of the sword Offer II 116. Number of provinces
Yes n Cities , Some of them are connected to each other , Others are not connected . If the city a And the city b Direct connection , And the city b And the city c Direct connection , So the city a And the city c Indirectly connected .
Province It's a group of directly or indirectly connected cities , There are no other cities in the group that are not connected .
To give you one n x n Matrix isConnected , among isConnected[i][j] = 1 It means the first one i Two cities and j The two cities are directly connected , and isConnected[i][j] = 0 The two are not directly connected .
Back in the matrix Province The number of .
Example 1:

Input :isConnected = [[1,1,0],[1,1,0],[0,0,1]]
Output :2
Example 2:

Input :isConnected = [[1,0,0],[0,1,0],[0,0,1]]
Output :3
As follows: , Simple recursive method
void f2(int** isConnected, int n,int *r,int j){
int i;
r[j]=0;
for(i=0;i<n;i++){
if(isConnected[j][i]==1&&r[i]==1&&i!=j){
r[i]=0;
f2(isConnected,n,r,i);
}
}
}
void f(int** isConnected, int n,int *r,int *sum){
int i,j;
for(i=0;i<n;i++){
if(r[i]==1){
r[i]=0;
(*sum)++;
for(j=0;j<n;j++){
if(isConnected[i][j]==1&&r[j]==1&&i!=j){
f2(isConnected,n,r,j);
}
}
}
}
}
int findCircleNum(int** isConnected, int isConnectedSize, int* isConnectedColSize){
int n=isConnectedSize;
int *sum=(int *)malloc(sizeof(int));
int r[isConnectedSize];
int i;
for(i=0;i<n;i++){
r[i]=1;
}
*sum=0;
f(isConnected,n,r,sum);
return *sum;
}
版权声明
本文为[Mr Gao]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204231851498735.html
边栏推荐
猜你喜欢

MySQL学习第五弹——事务及其操作特性详解

【数学建模】—— 层次分析法(AHP)

Résolution: cnpm: impossible de charger le fichier... Cnpm. PS1 parce que l'exécution de scripts est désactivée sur ce système

Chondroitin sulfate in vitreous

Query the logistics update quantity according to the express order number

Introduction to ROS learning notes (II)

Tangle

2022.04.23(LC_714_买卖股票的最佳时机含手续费)

Machine learning practice - naive Bayes

mysql_linux版本的下载及安装详解
随机推荐
ctfshow-web361(SSTI)
Tencent map and high logo removal method
ctfshow-web362(SSTI)
Esp32 (UART event) - serial port event learning (1)
Use bitnami / PostgreSQL repmgr image to quickly set up PostgreSQL ha
Esp32 drive encoder -- siq-02fvs3 (vscade + IDF)
关于unity文件读取的操作(一)
实战业务优化方案总结---主目录---持续更新
Sentinel服务熔断实战(sentinel整合ribbon+openFeign+fallback)
纠结
mysql_linux版本的下載及安裝詳解
MVVM模型
Druid SQL和Security在美团点评的实践
微搭低代码零基础入门课(第三课)
使用晨曦记账本,分析某个时间段每个账户收支结余
七、DOM(下) - 章节课后练习题及答案
Treatment of incomplete display of listview height
Sentinel rule persistence into Nacos
[popular science] CRC verification (I) what is CRC verification?
电路在线模拟