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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【计算理论】计算复杂性 ( 两个带子的图灵机的时间复杂度 )

發(fā)布時(shí)間:2025/6/17 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【计算理论】计算复杂性 ( 两个带子的图灵机的时间复杂度 ) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 一、兩個(gè)帶子的圖靈機(jī)的時(shí)間復(fù)雜度





一、兩個(gè)帶子的圖靈機(jī)的時(shí)間復(fù)雜度



討論兩個(gè)帶子的圖靈機(jī)的時(shí)間復(fù)雜度 ;


計(jì)算問題如下 :

給定語言 : A={0k1k:k≥0}\rm A = \{ 0^k1^k : k \geq 0 \}A={0k1k:k0}

構(gòu)造 兩個(gè)帶子的 圖靈機(jī) M3\rm M_3M3? 認(rèn)識上述語言 ;



算法分析過程 : 假設(shè)字符串為 000111000111000111 , 最壞的情況 ;

開始時(shí)的狀態(tài) : 第一個(gè)帶子是 000111000111000111 輸入字符 , 第二個(gè)帶子是空的 ;

第一步 : 讀頭一 讀取 帶子一 字符 000 , 讀頭二 將 000 字符寫入到 帶子二 中 ;

第二步 : 讀頭一 讀取 帶子一 字符 000 , 讀頭二 將 000 字符寫入到 帶子二 中 ;

第三步 : 讀頭一 讀取 帶子一 字符 000 , 讀頭二 將 000 字符寫入到 帶子二 中 ;

第四步 : 讀頭一 讀取 帶子一 字符 111 , 讀頭二 將 000 字符從當(dāng)前帶子中抹掉 ;

第五步 : 讀頭一 讀取 帶子一 字符 111 , 讀頭二 將 000 字符從當(dāng)前帶子中抹掉 ;

第六步 : 讀頭一 讀取 帶子一 字符 111 , 讀頭二 將 000 字符從當(dāng)前帶子中抹掉 ; 此時(shí)帶子一讀取完畢 , 帶子二為空 , 此時(shí)進(jìn)入接受狀態(tài) ;


M3\rm M_3M3? 是兩個(gè)帶子的圖靈機(jī) , 算法設(shè)計(jì)如下 :


M3=\rm M_3 =M3?= " 在輸入字符串 w\rm ww 上進(jìn)行如下計(jì)算 :

① 掃描整個(gè)帶子上的字符串 , 查看 000111 的順序 , 所有的 000 必須在所有的 111 前面 ; 如果順序錯(cuò)誤 , 進(jìn)入 拒絕狀態(tài) ;

② 掃描 帶子一 上的 000 字符 , 直到遇到 111 字符 , 同時(shí)將 000 拷貝到 帶子二 中 ;

③ 掃描 帶子一 上的 111 字符 , 直到字符串結(jié)束 , 每讀取一個(gè) 111 字符 , 就刪除 帶子二 中的 000 字符 ;

④ 如果所有的 000 字符都被刪除 , 帶子一 中的 111 字符還沒有讀取完畢 , 進(jìn)入 拒絕狀態(tài) ; 如果 帶子一 中的字符讀取完畢 , 帶子二 中還有 000 字符剩余 , 進(jìn)入 拒絕狀態(tài) ; 如果 帶子二 中的 000 字符都被刪除 , 帶子一 正好讀取完畢 , 進(jìn)入 接受狀態(tài) ; "


計(jì)算上述算法的時(shí)間復(fù)雜度 :

首先檢查 010101 的相對順序 , 最壞的情況下是讀頭走 n\rm nn 步 , 其復(fù)雜度是 O(n)\rm O(n)O(n) ;

然后讀取帶子一 然后寫入擦除帶子二 操作 , 整體執(zhí)行了 n\rm nn 步 , 的時(shí)間復(fù)雜度是 O(n)\rm O(n)O(n)

上述兩個(gè)步驟的時(shí)間復(fù)雜度是 : O(n)+O(n)=O(n)\rm O(n) + O(n) = O(n)O(n)+O(n)=O(n)


在 【計(jì)算理論】計(jì)算復(fù)雜性 ( 小 O 記號 | 嚴(yán)格漸進(jìn)上界 | 分析算法的時(shí)間復(fù)雜度 ) 博客中 , 使用一個(gè)帶子的圖靈機(jī) M1\rm M_1M1? 識別上述語言 , 時(shí)間復(fù)雜度是 O(n)+O(n2)=O(n2)\rm O(n) + O(n^2) = O(n^2)O(n)+O(n2)=O(n2) ;



兩個(gè)帶子的圖靈機(jī) 與 一個(gè)帶子的圖靈機(jī) 計(jì)算能力 是等價(jià)的 ,

計(jì)算能力 等價(jià) 指的是 可以 識別相同的語言 , 解決相同的計(jì)算問題 ,

但是兩種圖靈機(jī)的 計(jì)算效率不同 , 兩個(gè)帶子的圖靈機(jī)計(jì)算效率一般 高于 一個(gè)帶子的圖靈機(jī)的計(jì)算效率 ;

總結(jié)

以上是生活随笔為你收集整理的【计算理论】计算复杂性 ( 两个带子的图灵机的时间复杂度 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。