Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    2

    [vb.net] Eliminare due elementi uguali array

    Ciao

    In un array dovrei trovare, se esistono, elementi uguali e se si lasciarne solo uno. Eliminando i doppioni

    Grazie
    Ciao

  2. #2
    L'array (o la matrice) di input è ordinato in base al campo che desideri confrontare?
    Se non lo è, il nuovo array deve essere ordinato o deve mantenere gli elementi con lo stesso ordine dell'input?
    Di che quantità si tratta (circa)?

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    2

    [vb.net] Eliminare due elementi uguali array

    L'array è una matrice numerica(n righe X 2 colonne)) non ordinata (ma la posso ordinare). Dei valori si ripetono nella prima colonna (non è detto anche nella seconda), io vorrei eliminare i doppi mantenendo uno dei due valori (indipendentemente dal valore della stessa riga nella seconda colonna )

    Spero di essere stato chiaro...

    Grazie mille Ciao Marco

  4. #4
    Se sei sicuro che non ti interessa di quale valore tenere della seconda colonna, dopo che hai ordinato la VecchiaMatrice fai così...

    codice:
    Dim NuovaMatrice()
    Dim ContatoreNoDoppi As Long
    Dim I As Long
    
    ContatoreNoDoppi = 0
    Redim Preserve NuovaMatrice(0, 1)
    NuovaMatrice(0, 0) = VecchiaMatrice(0, 0)
    NuovaMatrice(0, 1) = VecchiaMatrice(0, 1)
    For I = 1 To ElementiVecchiaMatrice
        If NuovaMatrice(ContatoreNoDoppi, 0) <> VecchiaMatrice(I, 0) Then
            ContatoreNoDoppi = ContatoreNoDoppi + 1
            Redim Preserve NuovaMatrice(ContatoreNoDoppi, 1)
            NuovaMatrice(ContatoreNoDoppi, 0) = VecchiaMatrice(I, 0)
            NuovaMatrice(ContatoreNoDoppi, 1) = VecchiaMatrice(I, 1)
        End If
    Next I
    Volendo, anzichè scrivere in una nuova matrice, puoi utilizzare solamente la vecchia (togli solo il Redim e mettilo una sola volta alla fine)


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.