色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

電路板電路布線設計相關問題

西西 ? 來源:博客園 ? 作者:祥昊 ? 2020-08-08 11:01 ? 次閱讀

問題

在一塊電路板的上下兩端分別有n個接線柱。根據電路設計,要求用導線 (i,π(i)),將上端接線柱 i 與下端接線柱 π(i) 相連,

如圖,其中 π(i),1《=i《=n,是(1,2……,n)的一個排列。導線(i,π(i))稱為該電路板上的第i條連線。對于任何 1《=i《s《=n,第i條連線和第s條連線相交的充分且必要條件是 π(i) 》 π(s)。

ps:注意 π(pi) 和 n,不是小寫的n,別看錯了

問:在制作電路板時,要求將這n條線分布到若干個絕緣層上,在同一層上的連線不能相交。電路布線問題要確定將哪些連線安排在第一層上,使得該層上有盡可能多的連線。

詳細說明

首先 上下各有 n 個接線柱,用 a[i] 數組表示 與 上接線柱 相連線的 下接線柱,再用 set[i][j] 表示上接線柱 i 與下接線柱 j 相連線的 左邊(包括 i ,j 連線)的最大不相交連線的個數。

ps(這里的 j ,i 和上面問題中說的不是一個東西,這里的 i指的是上接線柱,j指的是下接線柱)

1、公式如下:

如果 j != a[i] 則 max( set[i-1][j],set[i][j-1] )

set[i,j] =

如果 j == a[i] 則 set[i-1][j-1] + 1

循環遍歷 i 和 j ,具體使用 i X j 的嵌套循環,其實就是每一個上接線柱和每一個下接線柱做一次匹配,這樣就可以得出結果,set[n][n]即我們想要的結果。最后通過回溯把結果輸出出來

==》 j == a[i],表示當上圖中的某個上下接線柱相連時,這時這兩個點不會在和其他的接線柱相連,

這時在 (i ,j) 處的最大不相交連線的個數就應該是就是 第 i-1個上接線柱 和第 j-1個下接線柱時的 最大不相交連線的個數 + 1。這個+1很重要。

==》 j != a[i],表示當上圖中的某個上下接線柱相連時,這時 i 點和 非 j 點相連, j 點和 非 i 點相連,

這時在( i ,j) 處的最大不相交連線的個數就應該和 ( i - 1,j ) 處最大不相交連線的個數、 ( i,j - 1)處最大不相交連線的個數中較大的最大不相交連線的個數相同。

2、參考圖如下:

紅色標明的就是算法選擇的路徑(向上優先,也可以用向左優先,答案都是四個,但值會有一點不同)。在斜角值改變時可以取得所求的子集。即 9-》10,7-》9, 5-》5, 3-》4

代碼塊

#include 《stdio.h》

#include 《stdlib.h》

#define MAX( a, b ) ( (a) 》 (b) ? (a) : (b) )

void circut( int a[], int set[][11], int n );

void back_track( int i, int j, int set[][11] );

int main()

{

int a[] = { 0, 8, 7, 4, 2, 5, 1, 9, 3, 10, 6 };

int set[11][11];

circut( a, set, 10 );

printf( “max set: %d \n”, set[10][10] );

back_track( 10, 10, set );

printf( “\n” );

system( “pause” );

return(0);

}

void circut( int a[], int set[][11], int n )

{

int i, j;

for ( i = 0; i 《 n; i++ )

{

set[i][0] = 0;

set[0][i] = 0;

}

for ( i = 1; i 《= n; i++ )

{

for ( j = 1; j 《= n; j++ )

{

if ( a[i] != j )

set[i][j] = MAX( set[i - 1][j], set[i][j - 1] );

else

set[i][j] = set[i - 1][j - 1] + 1;

}

}

}

void back_track( int i, int j, int set[][11] )

{

if ( i == 0 )

return;

if ( set[i][j] == set[i - 1][j] )

back_track( i - 1, j, set );

else if ( set[i][j] == set[i][j - 1] )

back_track( i, j - 1, set );

else{

back_track( i - 1, j - 1, set );

printf( “(%d,%d) ”, i, j );

}

}

時間復雜度

circut 的時間復雜度為O(n2)

back_track的時間復雜度為 O(n)

如有錯誤請指正。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電路板
    +關注

    關注

    140

    文章

    4952

    瀏覽量

    97696
  • 電路設計
    +關注

    關注

    6673

    文章

    2451

    瀏覽量

    204176
收藏 人收藏

    評論

    相關推薦

    電路板設計過程中采用差分信號線布線的優勢和布線技巧

    電路板設計過程中采用差分信號線布線的優勢和布線技巧 布線
    發表于 09-06 08:20 ?1395次閱讀
    <b class='flag-5'>電路板</b>設計過程中采用差分信號線<b class='flag-5'>布線</b>的優勢和<b class='flag-5'>布線</b>技巧

    電路板布線設計(一)探索雙層布線技藝

    成本時總是要求設計者在設計中使用雙層電路板。雖然多層(四層、六層以及八層)的解決方式無論在尺寸、噪聲,以及性能上都可以做得更好,但成本壓力迫使工程師必須盡量使用雙層。在本文中將討論使用或不用自動
    發表于 04-28 11:45

    如何實現良好的電路板布局布線

      工程課程一般不會教授如何實現良好的電路板布局布線。高頻RF類課程會研究走線阻抗的重要性,但需要自行構建系統電源的工程師,通常不會將電源視為高頻系統,而忽視了電路板布局布線的重要性。
    發表于 11-15 08:27

    電磁兼容和印刷電路板(理論、設計和布線)

    電磁兼容和印刷電路板理論、設計和布線從理論、設計和布線的角度分析研究了電磁兼容(EMC)和印刷電路板(PCB)所涉及的問題,全書內容共有9章。第1-3章介紹了EMC的基本原理
    發表于 10-06 17:45 ?0次下載
    電磁兼容和印刷<b class='flag-5'>電路板</b>(理論、設計和<b class='flag-5'>布線</b>)

    印制電路板布線技術

    除了元器件的選擇和電路設計之外,良好的印制電路板(PCB)布線在電磁兼容性中也是一個非常重要的因素。既然PCB是系統的固有成分,在PCB布線中增強電磁兼容性不會給產品
    發表于 04-24 21:48 ?39次下載
    印制<b class='flag-5'>電路板</b>的<b class='flag-5'>布線</b>技術

    用PROTEL DXP設計電路板的原則

    用PROTEL DXP電路板設計的原則 電路板設計的一般原則包括:電路板的選用、電路板尺寸、元件布局、布線、焊盤、填充、跨接線等。
    發表于 03-25 08:28 ?1099次閱讀

    電路板布局布線要求及規律

    電路板布局布線要求及規律,感興趣的小伙伴們可以看看。
    發表于 07-26 16:29 ?0次下載

    PCB設計高頻電路板布線技巧和注意事項詳細概述

    本文首先對高頻電路板做了簡單介紹,其次闡述了PCB設計高頻電路板布線技巧,最后介紹了PCB設計高頻電路板布線注意事項
    的頭像 發表于 10-14 11:49 ?6453次閱讀

    如何消除電路板布線中造成的耦合噪聲干擾

    電路板布線所產生主要寄生組件分別是電阻、電容以及電感。從電路圖轉成實際電路板時,所有寄生組件都有機會干擾電路性能。當一系統混合數字與模擬組件
    發表于 07-31 15:35 ?4687次閱讀
    如何消除<b class='flag-5'>電路板</b><b class='flag-5'>布線</b>中造成的耦合噪聲干擾

    電路板布線設計的順序

    電路板廠印制進行布線設計的順序可能不同,在電路板布線設計師準備進行設計布線之前,他的
    發表于 06-04 17:58 ?2745次閱讀

    印制電路板布線流程

    對于初次接觸印制電路板設計的用戶來說,首先面臨的問題就是設計工作中究竟包括哪些步驟,應從什么地方入手、各個步驟之間的銜接關系如何?因此,在利用Protel99SE設計印刷電路板之前,必須了解基本工序,也就是印制電路板
    發表于 08-16 11:53 ?3345次閱讀

    PCB電路板元件布局布線基本規則下載

    PCB電路板元件布局布線基本規則下載
    發表于 04-24 09:43 ?0次下載

    電路板級的EMC設計(3) PCB布線技術

    電路板級的EMC設計(3) PCB布線技術文章目錄電路板級的EMC設計(3) PCB布線技術文檔簡介第三部分:印制電路板
    發表于 11-07 09:51 ?28次下載
    <b class='flag-5'>電路板</b>級的EMC設計(3) PCB<b class='flag-5'>布線</b>技術

    提高電路板EMC能力PCB設計和布線方法

    提高電路板EMC能力PCB設計和布線方法
    的頭像 發表于 12-07 15:36 ?917次閱讀
    提高<b class='flag-5'>電路板</b>EMC能力PCB設計和<b class='flag-5'>布線</b>方法

    蛇形走線設計在電路板布線中的秘密

    一站式PCBA智造廠家今天為大家講講蛇形走線設計在電路板布線中有什么用?蛇形走線設計在電路板布線中的作用。電路板設計中,
    的頭像 發表于 08-20 09:18 ?326次閱讀
    主站蜘蛛池模板: 国产无遮挡又黄又爽在线视频 | 欧美 国产 日产 韩国 在线| 琉璃美人煞在线观看| 嗯好舒服嗯好大好猛好爽| 欧美精品熟妇乱| 日韩精品无码久久一区二区三| 日韩人妻无码精品-专区| 我的美女奴隶| 在线 中文字幕| 99视频这里只有精品国产| 成人网18免费韩国| 国产综合视频在线观看一区| 久久影院中文字幕| 日本VA在线视频播放| 亚州精品视频| 2020亚洲国产在线播放在线| 粗壮挺进邻居人妻无码| 狠狠爱亚洲五月婷婷av| 嫩B人妻精品一区二区三区| 特级毛片内射WWW无码| 一级毛片免费播放| yellow免费观看直播| 国产女人毛片| 免费观看成人www精品视频在线| 人成片在线观看亚洲无遮拦| 小货SAO边洗澡边CAO你动漫| 中文日产无乱码AV在线观| 吃奶摸下的激烈免费视频| 精品久久久麻豆国产精品| 嫩草影院永久在线一二三四| 亚洲 日韩 在线 国产 精品| 777ZYZ玖玖资源站最稳定网址| 国产成人高清亚洲一区app| 久久热在线视频精品1| 试看做受120秒免费午夜剧场| 一一本之道高清手机在线观看 | WWW国产亚洲精品久久久日本| 国产午夜精品鲁丝片| 魔乳 堕乳漫画acg产卵| 亚洲国产精品一区二区久久第| 9位美女厕所撒尿11分|