0
번째 배열을 반환하지만, 데모 용 I는 문자 AE 사용 :카운트 인스턴스 I 문자열의 두 배열을
{A, B, C, D, E}
을{1, a, b, c, c, c, d, e, e}
첫 번째 배열의 각 요소의 인스턴스를 두 번째 배열의 요소로 계산하고 세 번째 배열을 반환합니다. 첫 번째 배열의 길이). 상기 두 어레이 주어진 예
, 내 프로그램은 복귀해야
{2,1,3,1,2}을
대안 적 방법을 두 번째 배열을내어 :
{A, A, B, C, C, C, D, E, E}
및 복귀 :
{A, B, C, D, E}
,{2,1,3,1,2}
도 내 프로그램의 목적에 부합합니다.
function foo(arr) {
var a = [], b = [], prev;
arr.sort();
for (var i = 0; i < arr.length; i++) {
if (arr[i] !== prev) {
a.push(arr[i]);
b.push(1);
} else {
b[b.length-1]++;
}
prev = arr[i];
}
return [a, b];
}
어떻게 Visual Basic에서이 작업을 수행 할 것입니다 :
나는이 작업을 수행 할 수 있습니다 자바 스크립트에서 알아?
을 C#에서, LINQ를 사용하여 :.'b.Where (C => a.Contains의 (c)) GROUPBY (C => C). (g => g.Count())'를 선택하십시오. 여기서'a'는 첫 번째 목록이고'b'는 두 번째 목록입니다. – Oded
다른 방법 :'var result = (select b.Count (text => text == item)의 항목에서.) ToArray();'(하지만 C#에서는 VB에서 어떻게 보이는지 모른다.) –
@MatthewWatson - What 제로 카운트? 하지만 예, 필터링하면됩니다. – Oded