Articles of algoritmi

Rimuovi gli oggetti duplicati da un array usando javascript

Sto cercando di capire un modo efficace per rimuovere oggetti che sono duplicati da un array e alla ricerca della risposta più efficiente. Ho guardato in Internet tutto sembra usare dati primitivi … o non scalabile per array di grandi dimensioni. Questa è la mia attuale implementazione che può essere migliorata e voglio provare ad […]

Perché usare la ricerca binaria se c’è una ricerca ternaria?

Recentemente ho sentito parlare della ricerca ternaria in cui dividiamo un array in 3 parti e confrontiamo. Qui ci saranno due confronti ma riduce l’array a n / 3. Perché le persone non usano così tanto?

Come progettare un algoritmo per calcolare il numero di matematica in stile conto alla rovescia

Ho sempre voluto farlo, ma ogni volta che comincio a pensare al problema mi viene in mente a causa della sua natura esponenziale. Il problem solver che voglio essere in grado di capire e il codice è per il problema di matematica del conto alla rovescia: Dato un insieme di numeri da X1 a X5 […]

Rilevamento di collisioni di un numero enorme di cerchi

Qual è il modo migliore per controllare la collisione di un numero enorme di cerchi? È molto facile rilevare la collisione tra due cerchi, ma se controlliamo ogni combinazione, allora è O (n 2 ) che sicuramente non è una soluzione ottimale. Possiamo assumere che l’object cerchio abbia le seguenti proprietà: Coordinate Raggio Velocità Direzione […]

Funzione di partizione della lista collegata e risultati invertiti

Ho scritto questa funzione F # per partizionare un elenco fino a un certo punto e non oltre – proprio come un incrocio tra takeWhile e partition . let partitionWhile cl = let rec aux accl accr = match accr with | [] -> (accl, []) | h::t -> if ch then aux (h::accl) t […]

Randomizzare elementi in un array?

Ho creato un sito per un mio amico artista e lei vuole che il layout rimanga lo stesso, ma vuole anche che i nuovi dipinti che ha prodotto vengano mixati nel layout corrente. Quindi ho 12 miniature (thumb1 – thumb12) sulla pagina della galleria principale e 18 immagini (img1 – img18) da posizionare L’approccio a […]

Come generare combinazioni di elementi di un elenco in .NET 4.0

Ho una domanda che è simile, ma non identica, a quella che ho risposto qui. Vorrei che una funzione generi tutte le k –combinazioni di elementi da una lista di n elementi. Nota che sto cercando combinazioni, non permutazioni, e che abbiamo bisogno di una soluzione per la variazione di k (ad esempio, la codifica […]

Scrivere un parser di equazioni semplice

Quali tipi di algoritmi sarebbero usati per fare questo (come in, questa è una stringa, e voglio trovare la risposta): ((5 + (3 + (7 * 2))) – (8 * 9)) / 72 Qualcuno ha scritto che in, come potrei gestire così tante parentesi annidate?

Come trovare il numero più piccolo con solo 0 e 1 che è diviso per un numero dato?

Ogni intero positivo divide un numero la cui rappresentazione (base 10) contiene solo zero e uno. Si può dimostrare che: Considerare i numeri 1, 11, 111, 1111, ecc. Fino a 111 … 1, dove l’ultimo numero ha n + 1 cifre. Chiama questi numeri m 1 , m 2 , …, m n + 1 […]

Qual è la differenza tra profondità e altezza dell’albero?

Questa è una domanda semplice dalla teoria degli algoritmi. La differenza tra loro è che in un caso si contano il numero di nodes e in un altro numero di spigoli sul percorso più breve tra il nodo radice e il nodo concreto. Quale è quale?