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

  • 大小: 94KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-07
  • 語言: C/C++
  • 標(biāo)簽: C++??CYK??

資源簡介

使用C++實(shí)現(xiàn)的CYK算法。形式語言與自動(dòng)機(jī)課程中的算法之一。使用VS2005編譯通過。有說明文件。

資源截圖

代碼片段和文件信息

/*輸入示例
S->AB|BC//必須以S開頭輸入
A->BA|a
B->CC|b
C->AB|a

S->AB
A->AC|a
B->BC|b
C->CC|c

測(cè)試的字符串bbabaa
*/

#include?
#include?
#define?cnf_length?10//單個(gè)表達(dá)式的長度(包括“->“)
#define?test_length?10//測(cè)試表格的寬度
void?get_cnf(?char?cnf[][cnf_length]);//得到CNF
int?test(?char?cnf[][cnf_length]char?a[test_length]);//測(cè)試函數(shù)
void?new_table(?int?linechar?cnf[cnf_length][cnf_length]char?table[][cnf_length]char?create[][cnf_length*cnf_length*2]int?b_length);
int?main()
{
????char?cnf[cnf_length][cnf_length];
????char?a[test_length];

????printf(“請(qǐng)輸入CNF,以連續(xù)輸入兩個(gè)回車表示輸入結(jié)束:\n“);
????get_cnf(cnf);
????printf(“請(qǐng)輸入要測(cè)試的字符串:\n“);
????gets(a);
????printf(“\n算法演示:\n\n“);

????test(cnfa);

????return?0;
}
void?get_cnf(?char?cnf[][cnf_length])
{
????int?i;

????for?(i?=?0;i????????cnf[i][0]?=?‘\0‘;
????i?=?0;
????do
????{
????????gets(cnf[i]);
????????i++;
????}
????while?(?cnf[i-1][0]?!=?‘\0‘);
}
int?test(?char?cnf[][cnf_length]char?a[test_length])
{
????char?table[test_length*test_length/2?+?test_length/2][cnf_length];
????int?ijkmn;
????int?a_length;
????int?b_length;
????int?c_length;
????int?line?=?0;
????int?flag?=?0;
????char?create[test_length][cnf_length*cnf_length*2];

????for?(i=0;i????{
????????if?(a[i]?==?‘\0‘)
????????{
????????????a_length?=?i;
????????????break;
????????}
????}
????m?=?0;
????for?(i=0;i????{
????????for?(j=0;j????????{
????????????for?(k=0;k????????????{
????????????????if?(?cnf[j][k]?==?a[i]?)
????????????????{
????????????????????table[i][m]?=?cnf[j][0];
????????????????????m++;
????????????????????break;
????????????????}
????????????}
????????}
????????table[i][m]?=?‘\0‘;
????????printf(“%s\t“table[i]);
????????m?=?0;
????}
????printf(“\n“);

????m?=?0;
????n?=?0;
????b_length?=?a_length;
????c_length?=?0;
????for?(i=1;i????{
????????for?(j=0;j????????{
????????????while?(table[j][n]?!=?‘\0‘)
????????????{
????????????????for?(k=0;table[j+1+c_length][k]?!=?‘\0‘;k++)
????????????????{
????????????????????create[j][m]?=?table[j][n];
????????????????????m++;
????????????????????create[j][m]?=?table[j+1+c_length][k];
????????????????????m++;
????????????????}
????????????????n++;
????????????}
????????????n?=?0;
????????????while?(table[j+c_length][n]?!=?‘\0‘)
????????????{
????????????????for?(k=0;table[j+i][k]?!=?‘\0‘;k++)
????????????????{
????????????????????create[j][m]?=?table[j+c_length][n];
????????????????????m++;
????????????????????create[j][m]?=?table[j+i][k];
????????????????????m++;
????????????????}
????????????????n++;
????????????}
????????????n?=?0;
????????????create[j][m]?=?‘\0‘;
????????????m?=?0;
????????}
????????line?+=?(b_length-1);
????????line++;
????????new_table(linecnftablecreateb_length-1);
????????c_length?+=?b_length;
????????b_length--;
????}
????for

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件???????5971??2008-12-06?13:01??cyk.txt

?????文件???????4798??2009-06-09?13:44??CYK\CYK\CYK.cpp

?????文件???????3631??2009-06-09?13:44??CYK\CYK\CYK.vcproj

?????文件???????1427??2009-06-09?13:49??CYK\CYK\CYK.vcproj.LF-F03B34FFCA42.LFC.user

?????文件?????535552??2009-06-09?13:49??CYK\CYK.ncb

?????文件????????875??2009-06-09?13:44??CYK\CYK.sln

????..A..H.??????7680??2009-06-09?13:49??CYK\CYK.suo

?????目錄??????????0??2009-06-09?13:44??CYK\CYK

?????目錄??????????0??2009-06-09?13:44??CYK

-----------?---------??----------?-----??----

???????????????559934????????????????????9


評(píng)論

共有 條評(píng)論