我同意/.
(密鑰)是在應用動詞組最好的一般方法J.在這種情況下,我們需要對組連續數是相同的替代,是二元;.
(剪切):
1 1 0 0 1 0 1 <(;.1) 3 1 1 1 2 2 3
┌─┬─────┬───┬─┐
│3│1 1 1│2 2│3│
└─┴─────┴───┴─┘
我們CA氮素形態音柱爲左參數使用方法如下:
1 , 2 ~:/\ 3 1 1 1 2 2 3 NB. inserts ~: in the running sets of 2 numbers
1 1 0 0 1 0 1
把兩者結合起來:
(] <;.1~ 1 , 2 ~:/\ ]) 3 1 1 1 2 2 3
┌─┬─────┬───┬─┐
│3│1 1 1│2 2│3│
└─┴─────┴───┴─┘
使用相同的機制,先前建議:
,@(] (# , {.);.1~ 1 , 2 ~:/\ ]) 3 1 1 1 2 2 3
1 3 3 1 2 2 1 3
如果你是尋找一個不錯的Ĵ實施的外觀數列,那麼我建議the one on Rosetta Code:
las=: ,@((# , {.);.1~ 1 , 2 ~:/\ ])&.(10x&#.inv)@]^:([email protected][)
5 las 1 NB. left arg is sequence length, right arg is starting number
11 21 1211 111221 312211
雖然Tikkanz指出了J中的Looksay的實現,但我想到了:'looksay =:3:''。 ,&''x'',(「:@#,{。)@>(<;。1〜1,2&(〜:/ \))」:y'「0'。因此:'lookay^:(i.10)1'(從1開始) – 2013-01-23 11:18:05