Potrzebny algorytm - tablice

0

Jak powinien wygladac algorytm dzieki ktoremu sprawdzimy ile razy jaka wartosc wystapila w tablicy typu A : Array[1..n] of extended; Wynik zapisujemy do tablicy B[i,j] i - wartosc, j - czestosc wystepowania
Dzieki

0
Bob napisał(a)

Jak powinien wygladac algorytm dzieki ktoremu sprawdzimy ile razy jaka wartosc wystapila w tablicy typu A : Array[1..n] of extended; Wynik zapisujemy do tablicy B[i,j] i - wartosc, j - czestosc wystepowania

Nie rozumiem po co 2-wymiarowa tablica to czestosci wystepowania.. wystarczy jednowymiarowa B:array[1..maksymalna_wartosc_w_A] of extended;

for i:=1 to maksymalna_wartosc_w_A do
  B[i]:=0;
for i:=1 to n do
Inc(b[a[i]]);

Gotowe:)

0

hehe, nie doczytale kolego do dokladnie. dwuwymiarowa jest potrzebna ( uzywam dynamicznej rekordowej, tylko dla uproszczenia teraz jest zwykla dwuwymiarowa)
Potrzebuje znalezc wszystkie liczby w macierzy A i zapisac do macierzy B ile razy dana liczba wystepuje i jaka to liczba !!!

0

Hmmm jeśli chcesz sprawdzić ile dana liczba np. 5 to po wykonaniu tego algorytmu w b[5] bedzie właśnie częstość występowania liczby... wytłumacz dokładniej bo nie rozumiem...
[edit]

uzywam dynamicznej rekordowej, tylko dla uproszczenia teraz jest zwykla dwuwymiarowa

A Twój rekord z ilu zmiennych się składa?? bo jeśli z dwóch (tak jak mi sie wydaje) to Twoja tablica rekordowa (jak sam to nazwałeś) nie jest zwykłą dwuwymiarową.. przypomniam że tablica dwuwymiarowa ma i*j pól...

0

A[2,3,4,2,4,2] czyli tak: liczba 2 wystapila 3 razy --> zapisujemy do B[1,1] :=(2,3); liczba 3 wystapila 1 raz czyli B[2,2]:=(3,1); liczba 4 wystapila 2 ray czyli: B[3,3] := (4,2); inaczej nie umiem wytlumaczyc. mam nadzieje ze ktos to zrozumie :d

1 użytkowników online, w tym zalogowanych: 0, gości: 1