struct polaPocz
{
int nr_pola;
string wartosc;
long waga;
vector<long>lista_inw ; //przetrzymuej nr rekordów
};
vector<polaPocz>TablicaPoczatkow;
//tworzenie listy inwersyjnej
bool znaleziono = false;
polaPocz rekord;
for( i=0; i<tabela->RowCount-1; i++)
{
znaleziono = false;
for(j=0; j<TablicaPoczatkow.size(); j++)
{
if (dane[i].boots==TablicaPoczatkow[j].wartosc.c_str())
{
TablicaPoczatkow[j].waga++;
TablicaPoczatkow[j].lista_inw.push_back(i);
znaleziono = true;
break;
}
}
if (!znaleziono)
{
rekord.waga=1;
rekord.wartosc=dane[i].boots.c_str();
rekord.lista_inw.push_back(i);
TablicaPoczatkow.push_back(rekord);
}
}
//wyszukiwanie w liscie inwersyjnej
int aaa;
for (int i=0; i<TablicaPoczatkow.size()-1; i++)
{
if (Edit6->Text==TablicaPoczatkow[i].wartosc.c_str())
{
aaa = i;
break;
}
}
for (int i = 0 ; i<TablicaPoczatkow[aaa].lista_inw.size();i++)
{
tabela->RowCount++;
tabela->Cells[10][i]=dane[TablicaPoczatkow[aaa].lista_inw[i]].boots;
tabela->Cells[9][i]=dane[i].imie;
}