Avatar billede hkb-x Nybegynder
25. maj 2009 - 11:31 Der er 3 kommentarer

finde og indsætte manglende rækker

Jeg sider og leger lidt med at representere vektorer i et n dimentionalt rum i databasen. Jeg bruger følgende tabel:

Vektorrum (vector, dimension, coordinate) Hvor vector er 'navnet' på min vektor, dimension, er den/de dimensioner den udstrækker sig i og coordinate er hvor stor vektorens koordinat er i den givne dimension. 2 veckorer i et 3 dimensionalt rum ser altså således ud:

1, 1, 1
1, 2, 1
1, 3, 1
2, 1, 1
2, 2, 0
2, 3, 1

Hvor vektor 1 går lige ud i det 3 dimentionale rum mens vektor 2 ligger i planen af dimension 1 og 3 (da den går 0 ud i dimension 2).

Mit problem er at når jeg kaster data ind i denne tabel får jeg, pga den struktur de data jeg læser har, kun data hvor coordinate > 0. Dvs at hvis jeg skal regne vinklen mellem 2 vektorer får jeg fejl da di dimendioner hvor en af vektorerne er 0 ikke medtages i beregningen.

Så hvordan kan jeg finde de manglende dimensioner og indsætte de korrekte rækker med 0er?
Avatar billede acore Ekspert
26. maj 2009 - 20:05 #1
Hvis du ikke har andre oplysninger, så kan det ikke lade sig gøre, da du ikke er i stand til at bestemme dimensionen af en given vektor.

I dit eksempel ovenfor kan du eksempelvis godt afgøre at 2,2 mangler, mens du ikke kan afgøre om 2,4 mangler eller ikke er med fordi vektor 2's dimension er 3.
Avatar billede hkb-x Nybegynder
28. maj 2009 - 23:15 #2
de kører desværrer ikke lineært op dimensionerne det var bare nogle tal jeg kom med.

Mit problem kan lige så godt være en vektor i dimensionerne 6 og 15 skal sammenlignes med en anden der kun er i 15, her skal jeg så finde ud af at 6 mangler for at kunne lave en sammenligning.

Line nu kan jeg kun gøre det i n^2 tid med nogle lidt for store konstanter men jeg vil meget gerne kunne komme under det.
Avatar billede acore Ekspert
28. maj 2009 - 23:37 #3
Som jeg beskrev i mit tidligere indlæg kan du slet ikke gøre det, for du ved ikke, om et eller flere af de sidste elementer mangler, med mindre du kender dimensionen.

Det giver ikke mening at tale om 6, 15 eller n^2 før der er styr på det problem.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester