如果你最多是3個(gè)數(shù)據(jù),就是supreme的方法就好了,如果還可能更多的數(shù)據(jù),甚至數(shù)據(jù)數(shù)不定,這個(gè)其實(shí)要用遞歸或者分治算法(用來(lái)解決遞歸算法層數(shù)過(guò)多的問(wèn)題),這個(gè)就比較復(fù)雜了。
其實(shí)這個(gè)問(wèn)題用位運(yùn)算是比較好算的,也可以結(jié)合分治來(lái)處理:
以[2,2,3]為例來(lái)介紹,我們從低位開始作為處理
2,表示1,2 二種狀態(tài),對(duì)應(yīng)1位二進(jìn)制,最大值2-1=1
2,表示1,2 二種狀態(tài),對(duì)應(yīng)1位二進(jìn)制,最大值2-1=1
3,表示1,2,3 3種狀態(tài),對(duì)應(yīng)2位二進(jìn)制,最大值3-1=2
這樣,需要1+1+2共4位二進(jìn)制數(shù)來(lái)表示所有組合,其中還需要濾除最高位的2個(gè)段的一些情況(2位2進(jìn)制數(shù)其實(shí)可以表示4種狀態(tài)的),后面注意是低位開始對(duì)應(yīng)
00 0 0,對(duì)應(yīng)1,1,1
00 0 1, 對(duì)應(yīng)2,1,1
00 1 0,對(duì)應(yīng)1,2,1
00 1 1,對(duì)應(yīng)2,2,1
01 0 0,對(duì)應(yīng)1,1,2
01 0 1,對(duì)應(yīng)2,1,2
01 1 0,對(duì)應(yīng)1,2,2
01 1 1,對(duì)應(yīng)2,2,2
10 0 0,對(duì)應(yīng)1,1,3
10 0 1,對(duì)應(yīng)2,1,3
10 1 0,對(duì)應(yīng)1,2,3
10 1 1,對(duì)應(yīng)2,2,3
11 0 0 位段超出不符合
11 0 1 位段超出不符合
11 1 0 位段超出不符合
11 1 1 位段超出不符合
算法思路就介紹到這里,實(shí)現(xiàn)其實(shí)不是太復(fù)雜,不過(guò)如果位數(shù)太多了(超出語(yǔ)言處理范圍)還是需要分治
這個(gè)問(wèn)題如果真實(shí)的規(guī)模比較大,還需要考慮空間復(fù)雜度和時(shí)間復(fù)雜度問(wèn)題,遞歸肯定是不行的,就是轉(zhuǎn)換遞歸為循環(huán),空間復(fù)雜度也不一定好(當(dāng)然實(shí)際情況下也不該由javascript來(lái)處理這么大復(fù)雜度的問(wèn)題,但仍需考慮不是)。
這里再給出一個(gè)循環(huán)的方式
var arr = [2,2,3,2,5];
function MC(inarr,n){
var rt=[];
for(var i=0;i<inarr.length;i++){
for(var j=1;j<=n;j++){
var t=inarr[i].concat();
t.push(j);
rt.push(t)
}
}
return rt;
}
var mrt=[[]];
for(var i=0;i<arr.length;i++){
mrt=MC(mrt,arr[i]);
}
console.log(mrt);C#是半默認(rèn)break,你不寫會(huì)編譯器會(huì)發(fā)錯(cuò)誤
c都不能編輯,你是怎么輸入的
為啥沒(méi)有同時(shí)切換呢?因?yàn)椴患觤ode的時(shí)候就是同時(shí)切換。
你可以把過(guò)渡寫的慢慢慢慢點(diǎn),看看。
出現(xiàn)留白的原因是,新加入的組件"div"會(huì)把原有的dom結(jié)構(gòu)擠下去,所以我原來(lái)寫切換的時(shí)候在過(guò)渡里加了
position: absolute;
top:0;
left:0;
來(lái)避免這種情況,你可以先試試看行不行
String str = "798>getcolsum(fmoney)>getcolavg(fmoney)";
String pattern = "getcol\\w{3}\\([\\w.]*\\)";
Matcher m = Pattern.compile(pattern).matcher(str);
List<String> result=new ArrayList<String>();
while(m.find()){
result.add(m.group());
}操作2和操作3實(shí)質(zhì)上是一樣的。這個(gè)問(wèn)題的本質(zhì)在于,刪除dom對(duì)象之后,關(guān)聯(lián)的事件也會(huì)刪除。
問(wèn)題已解決,原因是 我引的一個(gè)css 文件里面,設(shè)置了頭部 display:none 。
redis的k=>v存儲(chǔ)結(jié)構(gòu)中的v要求是一個(gè)字符串。所以你可以像樓上說(shuō)的序列化或者生成一個(gè)json字符串。redis是沒(méi)有辦法直接存放數(shù)組的。
首先,如果你的頁(yè)面在桌面谷歌瀏覽器上運(yùn)行沒(méi)問(wèn)題的話,那就看下面
在你的index.html里面的<div id='app'></div>里面添加一點(diǎn)東西。比如<div id='app'>正在加載..</div>
正常情況下,頁(yè)面打開時(shí)候先出現(xiàn) 正在加載..,等那個(gè)打包的js加載完成才會(huì)渲染頁(yè)面
如果在你的手機(jī)上出現(xiàn)了正在加載..,然后就沒(méi)有反應(yīng)了,估計(jì)就是那個(gè)打包后的js運(yùn)行出錯(cuò),
可能原因有 symbol這些es6語(yǔ)法,你可以把react-scripts版本降低一些,比如降低到0.9.0(最新版本是1.1.x),然后重新打包試試
你寫的有問(wèn)題,事件應(yīng)該綁定在login.vue中最外層div中,并且這個(gè)div高度100%;
其實(shí)右側(cè)也是也是有padding的,你的layout-cup-r盒子設(shè)置了padding-right后,l-right也設(shè)置了margin-right,l-right盒子向右邊移動(dòng)的單位正好是你的padding-right,所以視覺上并沒(méi)有看出來(lái)。你去掉margin-right就看的到了
哦對(duì)。。還有就是你的l-main盒子是100%,他會(huì)使得盒子占據(jù)父盒子的所有寬度,如果不加margin-right, l-right盒子會(huì)掉下去。你需要設(shè)置成一個(gè)更小一點(diǎn)讓兩個(gè)盒子的寬度加起來(lái)小于父盒子。
打印出來(lái)是這個(gè)
貌似沒(méi)有,這是小程序的bug
你還是要依靠后臺(tái)返還的數(shù)據(jù)啊,angular攔截器不錯(cuò)的
PHP本身就提供了一些庫(kù)來(lái)操作XML,手冊(cè):
http://www.php.net/manual/zh/...
DOMDocument
ML Expat Parser
SimpleXML
XMLReader
...
參考一下文章例子
http://blog.csdn.net/aloneswo...
自己看看用什么方法來(lái)解析~
哪里解決不了?
比如這樣吧,遍歷層層解析:
<?php
header("Content-type:text/html; Charset=utf-8");
$content = "
<commpara>
<itempara>
<pararow>
<retcode>0</retcode>
<retstr>成功</retstr>
</pararow>
</itempara>
</commpara>
";
// $xml = simplexml_load_file("test.xml");
$xml = simplexml_load_string($content);
echo '第一層:' . $xml->getName() . "<br />";
foreach($xml->children() as $child){
echo '第二層:' . $child->getName(). "<br />";
foreach($child->children() as $subChild){
echo '第三層:' . $subChild->getName() . "<br />";
foreach($subChild->children() as $item){
echo $item->getName() . ": " . $item . "<br />";
}
}
}
輸出:
第一層:commpara
第二層:itempara
第三層:pararow
retcode: 0
retstr: 成功
更簡(jiǎn)單粗暴的XML轉(zhuǎn)數(shù)組,這樣子:
$content = "
<commpara>
<itempara>
<pararow>
<retcode>0</retcode>
<retstr>成功</retstr>
</pararow>
</itempara>
</commpara>
";
$xml = simplexml_load_string($content);
$json = json_encode($xml);
$array = json_decode($json,TRUE);
print_r($array);
輸出,直接就是個(gè)數(shù)組:
Array
(
[itempara] => Array
(
[pararow] => Array
(
[retcode] => 0
[retstr] => 成功
)
)
)傳入選項(xiàng)underscored:true
canvas畫時(shí)鐘的方式可以實(shí)現(xiàn),操作dom寫這個(gè)效率不高。
https://div.io/topic/1894 已解決 延遲dom的渲染
volist嵌套使用
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問(wèn),美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。