91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-29
  • 語言: C/C++
  • 標簽: c/c++??優化??無向圖??

資源簡介

輸入節點數和邊數自動生成無向圖并計算橋的數量,一個cpp文件

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
#include?
#include?
#include
using?namespace?std;

class?lineSet{
public:
//int
int?pointNum;
int?lineNum;
int?set[20000][2];
lineSet(){
lineNum=0;
pointNum=0;
for(int?i=0;i<20000;i++){
for(int?j=0;j<2;j++){
set[i][j]=-1;
}
}
}

};
vector?split(const?string?&s?const?string?&seperator){
????vector?result;
????typedef?string::size_type?string_size;
????string_size?i?=?0;
?????
????while(i?!=?s.size()){
????????//找到字符串中首個不等于分隔符的字母;
????????int?flag?=?0;
????????while(i?!=?s.size()?&&?flag?==?0){
????????????flag?=?1;
????????????for(string_size?x?=?0;?x? if(s[i]?==?seperator[x]){
++i;
flag?=?0;
break;
}
}?????
????????//找到又一個分隔符,將兩個分隔符之間的字符串取出;
????????flag?=?0;
????????string_size?j?=?i;
????????while(j?!=?s.size()?&&?flag?==?0){
????????????for(string_size?x?=?0;?x? if(s[j]?==?seperator[x]){
flag?=?1;
break;
}
if(flag?==?0)
++j;
}
if(i?!=?j){
result.push_back(s.substr(i?j-i));
i?=?j;
}
}
return?result;
}

int?lineSum;
void?ReadLine(int?**map)
{
// cout<<“逐行讀取?將行讀入字符串?行之間用回車換行區分“< ifstream?fin(“data.txt“);?
string?s;?
lineSet?ls;
getline(fins);
ls.pointNum?=?atoi(s.c_str());
cout?<<“節點數:?“< getline(fins);
ls.lineNum?=?atoi(s.c_str());
cout?<<“邊數:?“< int?k;
while?(getline(fins))
{?

vector?v?=?split(s?“?“);?//可按多個字符來分隔;
????//for(vector::size_type?i?=?0;?i?!=?v.size();?++i)
??????
// cout< ls.set[k][0]=atoi(v[0].c_str());
ls.set[k++][1]=atoi(v[1].c_str());

//cout?< }

k=0;
while(ls.set[k][0]!=-1){
map[ls.set[k][0]][ls.set[k][1]]=1;
map[ls.set[k][1]][ls.set[k][0]]=1;
k++;
}
for(int?i=0;i for(int?j=0;j if(map[i][j]==1&&i!=j){
++lineSum;
}
}
}


}



int?*?newIntRaw(int?n)
{
????return?(int?*)malloc(sizeof(int)?*?n);
}
int?*?newInt(int?n?int?init)
{
????int?*p?=?newIntRaw(n);
????int?i;
????for?(i?=?0;?i?????????p[i]?=?init;
????return?p;
}
int?**?newMap(int?n?int?m?int?init)
{
????int?**res?=?(int?**)malloc(sizeof(int?*)?*?n);
????int?i;
????for?(i?=?0;?i?????????res[i]?=?newInt(m?init);
????return?res;
}

typedef?struct
{
????int?e;
????int?n;
????int?**map;
}?Graph;

?
Graph?*?newGraph()
{
????int?n?e;
????int?i;
????int?from?to;
????Graph?*g?=?(Graph?*)malloc(sizeof(Graph));

//cout<<“逐行讀取?將行讀入字符串?行之間用回車換行區分“< ifstream?fin(“data.txt“);?
string?s;?
lineSet?ls;
getline(fins);
ls.pointNum?=?atoi(s.c_str());

評論

共有 條評論