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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

数据结构第二版之(课后题)BF算法病毒感染检测

發布時間:2025/6/17 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据结构第二版之(课后题)BF算法病毒感染检测 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//vs2013下編譯通過.換別的編譯器自行補充頭文件和修改源代碼
#include<iostream> #include<fstream> #include <string> using namespace std; char temp[256];//存放的臨時數組 char virus[20];//病毒數組 char DNA[20];//DNA的數組 int j = 0;//病毒長度 int DNAlength = 0;//dna長度 int flag = 0;//判斷是不是感染開關 void toCharArry(string str)//將讀入的字符串轉化為字符數組 {j = 0;int tem=0;strcpy_s(temp, str.c_str()); //cout << str.length();for (int i = 0; i < str.length(); i++)//找到空格的位置{if (temp[i] == ' '){ j=(i+1); break; }}tem = j;for (int i = 0; i < str.length() - j + 1;i++)//寫入DNA數組;{DNA[i] = temp[tem];if (i == str.length() - j){DNA[i] = '\0';//到底用不用加\我也不知道}tem++;}for (int i = 0; i < j; i++)//得到病毒序列{virus[i] = temp[i]; }/*for (int i = 0; i <9; i++)//輸出Dna序列{cout <<DNA[i];}cout << endl;for (int i = 0; i < j; i++)//輸出病毒序列{cout << virus[i];}cout << endl;cout << j;*/ } void addvVirusToDouble(char virus[])//將病毒序列擴大為原來二倍 {int k = j-1;for (int i = 0; i < j-1 ; i++){virus[k] = virus[i];k++;}/*for (int i = 0; i < j*2; i++)//輸出病毒序列{cout << virus[i];}cout << endl;*/} int BF(int zhu, int fu, char virus[], char DNA[])//BF算法判斷 {int i = 0, j = 0;while (i <= zhu&&j <= fu){if (DNA[i]==virus[j]){ i++; j++; }else { i = i - j + 1; j = 0; }}if (j > fu){ return 1; }else return 0;} void virusPossibility()//列出將長度擴大二倍的病毒序列可能性 {char temp[30];for (int i = 0; i < j; i++){for (int k = 0; k < j; k++)temp[k] = virus[i + k];//temp[j] = '\0';if (BF(DNAlength - j - 1, j - 2, temp, DNA) == 1)flag = 1;}/*if (flag == 1) { flag = 0; cout << "O" << endl; }else cout << "X" << endl;*/} void detection()//調用函數判斷是否感染 {int num = 0;string str;ifstream infile("病毒檢測輸入數據.txt", ios::in);ofstream outfile("病毒檢測結果.txt", ios::out);if (!infile){ cout << "open document ERROE!!" << endl; exit(-1); }else cout << "The document reads into success!!" << endl;if (!outfile){ cout << "Establish document failure ERROE!!" << endl; exit(-1); }getline(infile, str);num = stof(str);//賦值給num之后判斷;//cout << num;while (num--){getline(infile, str);DNAlength = str.length();toCharArry(str);addvVirusToDouble(virus);virusPossibility();if (flag == 1){ flag = 0; outfile << str + " " + "YES" << endl; }//媽的這里必須把flag弄成0,要不只要有一個是下面的都是了...else { outfile << str + " " + "NO" << endl; }}infile.close();outfile.close();} int main() {string str;detection();cout << "The TXTdocument outputs success!!!" << endl;}

程序截圖:

?

老師讓思考的作業,網上找了找也沒有找到,作為小白,自己動手寫了一下分享給大家,造福后來人,代碼寫的不夠好......不要亂噴謝謝!!

轉載于:https://www.cnblogs.com/xuexidememeda/p/7801391.html

總結

以上是生活随笔為你收集整理的数据结构第二版之(课后题)BF算法病毒感染检测的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 免费99视频| 亚洲国产精品18久久久久久 | 国产一区免费看 | 日韩欧美国产一区二区三区 | 国产亚洲天堂网 | 一区二区不卡 | 欧美xxxbbb| 欧美在线观看一区二区 | 一区二区三区免费在线视频 | 一区自拍 | 精品国产a | 涩涩五月天 | 国产第九页 | 夜夜嗨一区 | 69av视频在线 | 成人人伦一区二区三区 | 国产精品性 | 国产a国产片国产 | 91超碰免费在线 | 大咪咪dvd| 国产成人77亚洲精品www | 91久久精品美女高潮 | 午夜影院在线观看 | 真实乱偷全部视频 | 一二三区在线观看 | 久久久高清视频 | 亚洲夜夜爽 | 国产又粗又猛又爽又黄的视频小说 | 四虎免费av | 久久综合久久综合久久 | 欧美性猛交ⅹxx乱大交 | 久久亚洲av成人无码国产电影 | 国产三级精品三级在线观看 | 日韩在线播放一区 | ,国产精品国产三级国产 | 五月天最新网址 | 欧美亚洲少妇 | 免费的黄网站 | www.久久视频 | 精品亚洲国产成av人片传媒 | 99视频在线看 | 操网| 亚欧美日韩 | 最新天堂中文在线 | 一区二区三区高清在线 | 色伊人| 亚洲精品一区二 | 日批黄色 | 亚洲av男人的天堂在线观看 | 欧美高清hd| 国产在线免费视频 | 日韩毛片免费看 | 国产91在线视频观看 | 粉嫩精品久久99综合一区 | 91色啪| 男人免费视频 | 色香天天 | 91原创国产| 在线视频一区二区三区 | 人人超碰人人 | 亚洲二三区 | 97视频免费在线 | 九色在线播放 | www.超碰97 | 日本白嫩的bbw | 性爱免费视频 | 精品人妻少妇嫩草av无码 | 农村妇女毛片 | 一级特级片| 亚洲成在线 | 两性午夜视频 | 超碰在线播放97 | 激情文学av| 色噜噜一区二区三区 | www国产www| 亚洲天堂小说 | 中文字幕人妻一区二区三区在线视频 | 欧美黄色性视频 | 日韩在线视频免费观看 | 婷婷九月综合 | 久久久久国产一区二区三区潘金莲 | 日韩美女做爰高潮免费 | 国产传媒中文字幕 | 欧美一区二区三区久久综合 | 欧美日韩一区二区在线播放 | 青青草色视频 | 亚洲av永久中文无码精品综合 | 国产精品成熟老女人 | 好吊一区二区三区 | 久草资源网 | 欧美成人精品欧美一级乱黄 | www.亚洲人 | 免费av一区二区三区 | 国产精品成熟老女人 | 老熟女高潮一区二区三区 | 久久精品不卡 | 香蕉啪啪网 | 国产精品日韩av | 哈利波特3在线观看免费版英文版 |