回溯(b a c k t r a c k i n g)是一種系統(tǒng)地搜索問(wèn)題解答的方法。為了實(shí)現(xiàn)回溯,首先需要為問(wèn)題定義一個(gè)解空間( solution space),這個(gè)空間必須至少包含問(wèn)題的一個(gè)解(可能是最優(yōu)的)。在迷宮老鼠問(wèn)題中,我們可以定義一個(gè)包含從入口到出口的所有路徑的解空間;在具有n 個(gè)對(duì)象的0 / 1背包問(wèn)題中(見(jiàn)1 . 4節(jié)和2 . 2節(jié)),解空間的一個(gè)合理選擇是2n 個(gè)長(zhǎng)度為n 的0 / 1向量的集合,這個(gè)集合表示了將0或1分配給x的所有可能方法。當(dāng)n= 3時(shí),解空間為{ ( 0 , 0 , 0 ),( 0 , 1 , 0 ),( 0 , 0 , 1 ),( 1 , 0 , 0 ),( 0 , 1 , 1 ),( 1 , 0 , 1 ),( 1 , 1 , 0 ),( 1 , 1 , 1 ) }。
標(biāo)簽:
搜索
上傳時(shí)間:
2014-01-17
上傳用戶:jhksyghr
#include<stdio.h>
void main(void)
{int n,k,derivata,a[10],i
printf("n=") scanf(" d",&n)
for(i=0 i<=n i++)
{ printf("a[ d]=",i) scanf(" d",&a[i])
}
printf("k=") scanf(" d",&k)
for(derivata=1 derivata<=k derivata++)
{
for(i=0 i<=n i++)
a[i]=a[i]*(n-i)
n--
for(i=0 i<=n i++)
printf(" d ",a[i])
printf("\n")
}}
標(biāo)簽:
void
derivata
include
printf
上傳時(shí)間:
2017-09-17
上傳用戶:duoshen1989