Cosa si intende per ordine naturale. Supponiamo che io abbia un oggetto Dipendente con nome, età e data di iscrizione, ordinamento per ordine naturale?che cosa è l'ordinamento naturale quando parliamo di smistamento?
risposta
ordinamento naturale è una sorta di sorta alfanumerico che sembra naturale per gli esseri umani.
In una sorta alfanumerico classica avremo qualcosa di simile:
1 10 11 12 2 20 21 3 4 5 6 7
se si sta utilizzando ordinamento naturale, sarà:
1 2 3 4 5 6 7 10 11 12 20 21
A seconda della lingua, ordinamento naturale a volte ignorano Lettere maiuscole e accentuate (cioè tutte le lettere accentuate sono trattate come la loro controparte non accentuata).
Molte lingue hanno una funzione per ordinare una stringa in modo naturale. Tuttavia, un Dipendente è troppo "di alto livello" per la lingua, è necessario decidere cosa significa per te ordinarli in modo naturale e creare la funzione corrispondente.
Dal mio punto di vista, l'ordine dei dipendenti inizierà ordinandoli per nome utilizzando un tipo naturale, quindi l'età e infine la data di adesione.
Secondo le statistiche ci sono due tipi di variabili categoriali. Variabili aventi categorie senza un ordinamento numerico (nominale) e quelle che hanno categorie ordinate (ordinale). L'esempio del nome, dell'età e della data di iscrizione di un dipendente è in realtà considerato una variabile nominale, quindi non ci può essere alcun ordinamento per ordine naturale. L'ordinamento naturale potrebbe esistere per esempio in età se l'hai classificato in livelli di bambino, adolescente, adulto, in cui si può osservare un tipo di ordinamento ascendente.
Per le stringhe che contengono numeri significa 1,2,3,4,5,6,7,8,9,10,11
invece di 1,10,11,2,3,4,5,6,7,8,9
Quindi questo riguarda solo le stringhe? Un oggetto con solo età e data non ha ordinamento naturale? – vinoth
Una data viene in genere ordinata come se fosse una stringa "aaaa-mm-gg". In questo caso non è necessario l'ordinamento "naturale" poiché è già stato eseguito poiché i numeri piccoli hanno zeri iniziali. – ThiefMaster
Inoltre, lingue diverse hanno regole di ordinamento o regole di confronto differenti, quindi l'ordine naturale dipende. Vedi [Wikipedia] (http://en.wikipedia.org/wiki/Collation) – vonPryz
Se uno come me si è trovato a leggere il seguente articolo:
https://www.copterlabs.com/natural-sorting-in-mysql/
(che tra l'altro è veramente utile), attenzione perché questo è un altro metodo di ordinamento.
Un corretto algoritmo di ordinamento naturale indica che si ordina in ordine alfabetico, ma quando si incontra una cifra si ordinerà quella cifra e tutte le cifre successive come un singolo carattere.
L'ordinamento naturale non ha nulla a che fare con l'ordinamento in base alla lunghezza della stringa, quindi in ordine alfabetico quando due stringhe hanno la stessa lunghezza. Anche se l'articolo che ho collegato è interessante, non commettere l'errore che ho fatto e penso che sia il modo corretto di ordinare naturalmente.
- 1. ASP.NET: Che cosa è esattamente interessato quando Javascript è disattivato?
- 2. Che cos'è l'ordinamento naturale in una TreeMap?
- 3. Che cosa è l'uso di "??"
- 4. Che cosa è _GLIBCXX_USE_NANOSLEEP?
- 5. Qt4 QMenu smistamento articoli
- 6. Quando utilizzare l'unione naturale di SQL invece di unirsi ... on?
- 7. Che cosa è "scipy.i`?
- 8. Che cos'è un identificatore naturale in Hibernate?
- 9. Che cosa è termios.TIOCGWINSZ
- 10. smistamento veloce in Haskell
- 11. Disattivazione di smistamento in DataTable non funzionante
- 12. Che cosa significa esattamente quando $ _FILES è vuoto?
- 13. cosa significa quando dicono che http è stateless
- 14. Che cosa fa esattamente `-rdynamic` e quando è esattamente necessario?
- 15. Cosa significa quando dicono che React è protetto XSS?
- 16. Che cosa significa quando un servizio web è asincrono?
- 17. Che cosa significa quando una funzione membro è volatile?
- 18. Che cosa significa quando il metodo è italico intellij idea?
- 19. Che cosa significa quando diciamo Hashtable o Vector è sincronizzato?
- 20. DotNet - Che cosa è int *?
- 21. (iOS) Che cosa è superview e cosa è subviews
- 22. Che cosa è esattamente Werkzeug?
- 23. Modellazione lo smistamento-iarda Algoritmo
- 24. che cosa è questo: ส็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็็
- 25. Strumenti di analisi del linguaggio naturale: cosa c'è fuori e cosa no?
- 26. C Suggerimenti per lo smistamento di array
- 27. Differenza tra O (n) e O (log (n)) - che è migliore e che cosa è esattamente O (log (n))?
- 28. Lista di smistamento in Python (trasposizione)
- 29. Che cosa fa BOOST_SERIALIZATION_NVP quando serializza l'oggetto?
- 30. Java: Che cosa è "for (;;)"
Ecco l'algoritmo di ordinamento naturale in javascript per maggiori informazioni 1. algo: http: //js-naturalsort.googlecode.com/svn/trunk/ naturalSort.js 2. Unit Test: http://code.google.com/p/js-naturalsort/source/browse/trunk/unit-tests.html –
Un'altra buona descrizione e un'implementazione più piccola: http: // blog. codinghorror.com/sorting-for-humans-natural-sort-order/ – dresende
In Java, l '"ordine naturale" non è quello che "sembra naturale" da qualche misura soggettiva, ma per gli oggetti, oggettivamente l'ordine imposto dal 'Comparable # metodo di confronto, tuttavia sembra agli umani. –