攀爬字串

2021-07-05 13:58:54 字數 1096 閱讀 7965

給定乙個字串s1,將其遞迴地分割成兩個非空子字串,從而將其表示為二叉樹。

下面是s1 = "great"的乙個可能表達:

great

/ \

gr eat

/ \ / \

g r e at

/ \a t

在攀爬字串的過程中,我們可以選擇其中任意乙個非葉節點,然後交換該節點的兩個兒子。

例如,我們選擇了"gr"節點,並將該節點的兩個兒子進行交換,從而產生了攀爬字串"rgeat"

rgeat

/ \

rg eat

/ \ / \

r g e at

/ \a t

我們認為,"rgeat""great"的乙個攀爬字串.

類似地,如果我們繼續將其節點"eat""at"進行交換,就會產生新的攀爬字串"rgtae"

rgtae

/ \

rg tae

/ \ / \

r g ta e

/ \t a

同樣地,"rgtae"也是"great"的乙個攀爬字串。

給定兩個相同長度的字串s1s2,判定s2是否為s1的攀爬字串。

class solution 

vector> > buf(n,vector>(n,vector(n+1,false)));

for (int k = 1; k <= n; k++)

else}}

}}

}return buf[0][0][n];

}};

攀爬字串 LintCode

給定乙個字串 s1,將其遞迴地分割成兩個非空子字串,從而將其表示為二叉樹。下面是s1 great 的乙個可能表達 在攀爬字串的過程中,我們可以選擇其中任意乙個非葉節點,然後交換該節點的兩個兒子。例如,我們選擇了 gr 節點,並將該節點的兩個兒子進行交換,從而產生了攀爬字串 rgeat 我們認為,rg...

程式設計題 攀爬字串

給定乙個字串s1,將其遞迴地分割成兩個非空子字串,從而將其表示為二叉樹。下面是s1 great 的乙個可能表達 great gr eat g r e at a t在攀爬字串的過程中,我們可以選擇其中任意乙個非葉節點,然後交換該節點的兩個兒子。例如,我們選擇了 gr 節點,並將該節點的兩個兒子進行交換...

ORACLE in 字串,字串,字串

因為傳進來的引數是 字串,字串,字串,要實現in 字串,字串,字串 select from htl price p where p.hotel id 30073328 and p.able sale date between to date 2009 03 27 yyyy mm dd and to ...