日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2021.1.20

發布時間:2024/1/8 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2021.1.20 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

上午:

并查集網課(正月點燈籠)

下面是例題:

//并查集找環 /* 題解: 【1】用一個parent[];產生聯系 【2】將點與點合并時,分別找到兩點的根節點合并 【3】如果兩個點的根節點相同就說明,這里有一個環 (優化)【4】將根連在一起時可以加一個判斷高度的, 將矮的加到高的上,這樣最大的高度不會變 */ #include<stdio.h> //將數組全部賦值為; void initialise(int *parent,int *rank) {for(int i=0;i<6;i++){parent[i]=-1;rank[i]=0;} } int find_root(int num,int *parent) { // if(num_root==num) // return num; // else // { // return( parent[num]=find_root(parent[num]); // }int num_root=num;while(parent[num_root]!=-1){//將自己直接連接到父親結點的num_root=parent[num_root];//}return num_root; }//合并x,y(當它倆根節點相同不用合并時返回0,否則返回1 int combine(int x,int y,int *parent,int *rank) {int x_root=find_root(x,parent);int y_root=find_root(y,parent);if(x_root==y_root){return 0;}else{//即,x比y高,將y_root連接到x_root上來if(rank[x_root]>rank[y_root])parent[y_root]=x_root;else if(rank[x_root]<rank[y_root])parent[x_root]=y_root;else{parent[x_root]=y_root;rank[y_root]++;}return 1;} } int main() {int parent[10000];int rank[10000];//樹的高度//將parent數組全部賦值為-1(可用于判斷是否為根節點)initialise(parent,rank);//這樣寫代表這兩個之間被線所連接int line[6][2]={{0,1},{1,2},{1,3},{3,4},{2,4},{2,5}};for(int i=0;i<6;i++){int x=line[i][0];int y=line[i][1];int book=combine(x,y,parent,rank);if(book==0){printf("Find a cycle.\n");return 0;}}printf("Never find a cycle.\n");return 0; }

下午:

親戚

這個題和上面那個一樣

/* 思路: 【1】就是要將前一個和后一個聯系起來 【2】即,將有親戚關系的一群人建成一棵樹(不一定為1棵),形成森林 【3】然后找他們的根節點,如果根節點相同就是一棵樹上,有親戚關系 注意: 是要將m2根節點變成m1根節點的父親 數組大小要看題目的數據范圍 先要將自己的父親賦初值為自己本身,后面才能以此來判斷 */ #include<stdio.h> int father[100000]; int findroot(int m1) {//當自己的父親為自己時,自己就是根節點if(father[m1]==m1)return m1;elsereturn father[m1]=findroot(father[m1]); } int main() {int n,m,p;scanf("%d %d %d",&n,&m,&p);//先將每個人的父親初始化為自己(方便找根節點)for(int i=1; i<=n; i++){father[i]=i;}for(int i=1; i<=m; i++){int m1,m2;scanf("%d %d",&m1,&m2);if(findroot(m1)!=findroot(m2))father[findroot(m1)]=findroot(m2);//將兩點的根節點連起來//father[m1]=m2;}for(int i=1; i<=p; i++){int p1,p2;scanf("%d %d",&p1,&p2);//如果根節點是一樣的,那么就在同一棵樹上if(findroot(p1)==findroot(p2)){printf("Yes\n");}elseprintf("No\n");}return 0; }

P1035新二叉樹

//別在洛谷用getchar(); //如果一個個輸入字符就用cin>>,別用scanf搭配getchar() /* 思路: 【1】直接把樹的結點聯系起來了 【2】然后按前序遍歷,輸出 【3】這個題最重要的是要將那一行三個字符聯系起來 (所以使用了一個結構體) */ #include<bits/stdc++.h> using namespace std; typedef struct node {char data;char left;char right; }Node; Node tree[30]; int n; void preorder(char root) {if(root=='*')return;for(int i=0;i<n;i++){if(root==tree[i].data){printf("%c",root);preorder(tree[i].left);preorder(tree[i].right);}} } int main() {scanf("%d",&n);char ch;for(int i=0;i<n;i++){//一定要注意字符輸入//別用會錯(已試毒) //getchar();//吸收回車符cin>>tree[i].data>>tree[i].left>>tree[i].right;}char root=tree[0].data;preorder(root);printf("\n");return 0; }

晚上:

P4913二叉樹的深度

(應該是深搜)

這個題又和上面那個新二叉樹(異曲同工)

#include<stdio.h> typedef struct node {int left;int right; }Node; int n; Node Tree[100000]; int max=0; //結點和高度 void findhigh(int dot,int high) {if(dot==0){if(high>max)max=high;return;}findhigh(Tree[dot].left,high+1);findhigh(Tree[dot].right,high+1); } int main() {scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d %d",&Tree[i].left,&Tree[i].right);}findhigh(1,1);printf("%d",max-1);return 0; }

總結

以上是生活随笔為你收集整理的2021.1.20的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产黄色大片视频 | 国产大学生自拍视频 | 亚洲专区欧美专区 | av狠狠| 91日本视频 | 欧美成人乱码一区二区三区 | 免费在线观看一区二区三区 | 手机在线小视频 | 无遮挡无掩盖网站 | 麻豆免费在线观看 | 男生和女生靠逼视频 | 国产精品欧美久久久久久 | 久久人人爽人人爽人人片av高清 | 各处沟厕大尺度偷拍女厕嘘嘘 | 国产精品一区二区人人爽 | 男插女视频在线观看 | 中文字幕有码av | 人人妻人人澡人人爽人人精品 | 亚洲av电影一区 | 视频在线观看视频 | 国产精品亚洲综合 | heyzo久久| 炕上如狼似虎的呻吟声 | 国产欧美日韩综合 | 国产xxxx做受视频 | 九九啪| 黄色欧美在线观看 | 91看片淫黄大片91桃色 | 男同毛片| 欧美整片第一页 | 久久久久久久久久久网站 | 六月色婷婷 | 在线观看亚洲视频 | 国产一区在线播放 | www青青草| 精品一区在线视频 | 69国产精品 | 午夜视频色 | 国产综合视频在线 | 一级理论片 | 欧美老女人xx | 国产宾馆实践打屁股91 | 老司机精品导航 | 久久99精品久久久水蜜桃 | 免费网站看av | 韩国毛片视频 | 亚洲高清无码久久久 | 91传媒理伦片在线观看 | 玩偶姐姐在线看 | 正在播放adn156松下纱荣子 | 亚洲av成人一区二区国产精品 | 色欲狠狠躁天天躁无码中文字幕 | 亚洲经典一区二区 | 伊人狼人影院 | 欧美四虎 | 特级毛片www | 久久免费观看视频 | 亚洲视频在线免费看 | 免费国产成人 | 天天爽天天爽 | 91精品视频在线 | 黄色大片网站在线观看 | 九九热视频在线观看 | 久久久男人天堂 | 日韩成人片 | 欧美日韩视频网站 | 最新91视频 | 嫩草在线观看视频 | 麻豆视频播放 | 免费观看成人av | 亚洲一区免费视频 | 伦理久久| 亚洲精品第三页 | 91久久精品www人人做人人爽 | 欧美肥老妇| 亚洲最大视频网站 | 国产最新视频在线 | 视频国产在线 | 91av中文字幕| 日本三级免费网站 | 亚洲乱码一区二区三区 | 国产精品无码无卡无需播放器 | 99热欧美 | 秋霞伦理一区二区 | 色噜噜狠狠一区二区三区果冻 | 小镇姑娘国语版在线观看免费 | 毛片a | 金鱼妻日剧免费观看完整版全集 | 狠狠一区二区 | www污网站 | 69视频一区二区 | 亚洲欧洲久久久 | 欧美激情网站 | 我爱我色成人网 | 他揉捏她两乳不停呻吟动态图 | 伊人性视频| xx在线视频 | 国产精品欧美久久久久天天影视 | 艳妇臀荡乳欲伦交换电影 |