Articles of ricorsione

Query della stessa tabella ricorsiva in SQL Server 2008

Ho la seguente tabella in un database di SQL Server 2008: Id Name ParentFolder — —- ———— 1 Europe NULL 2 Asia NULL 3 Germany 1 4 UK 1 5 China 2 6 India 2 7 Scotland 4 ParentFolder è un FK per Id nella stessa tabella. Vorrei creare una vista che si traduca in […]

Ricorsione vs anelli

Sto affrontando un problema in cui sia la ricorsione che l’uso di un loop sembrano soluzioni naturali. Esiste una convenzione o “metodo preferito” per casi come questo? (Ovviamente non è così semplice come sotto) ricorsione Item Search(string desired, Scope scope) { foreach(Item item in scope.items) if(item.name == desired) return item; return scope.Parent ? Search(desired, scope.Parent) […]

Quali funzioni ricorsive non possono essere riscritte usando i loop?

Per quanto ne so, la maggior parte delle funzioni ricorsive può essere riscritta usando i loop. Alcuni forse più difficili di altri, ma la maggior parte di essi può essere riscritta. In quali condizioni diventa imansible riscrivere una funzione ricorsiva usando un loop (se esistono tali condizioni)?

Come rendere un albero in Twig

Mi piacerebbe rendere un albero con una profondità indeterminata (figli di bambini di bambini, ecc.). Ho bisogno di scorrere l’array in modo ricorsivo; come posso farlo in Twig?

output inaspettato in C (ricorsione)

int main(void) { static int=5; if(–i) { main(); printf(“%d”,i); } } l’output del programma di cui sopra è — 0000 Ma penso che dovrebbe essere — 1234 Non so perché? Per favore aiutami

Ho ricevuto “l’applicazione di schema non una procedura” nell’ultima chiamata ricorsiva di una funzione

quindi ecco il codice: (define (time-prime-test n) (newline) (display n) (start-prime-test n (runtime))) (define (start-prime-test n start-time) (if (prime? n) (report-prime (- (runtime) start-time)))) (define (report-prime elapsed-time) (display ” *** “) (display elapsed-time)) (define (search-for-primes nm) (if (< nm) ((time-prime-test n) (search-for-primes (+ n 1) m)) (display " calculating stopped. "))) (search-for-primes 100000 100020) e […]

Trovare il valore massimo in un array usando la ricorsione

Per una delle domande che mi è stato chiesto di risolvere, ho trovato il valore massimo di un array usando un ciclo for, quindi ho cercato di trovarlo utilizzando la ricorsione e questo è ciò che mi è venuto in mente: public static int findMax(int[] a, int head, int last) { int max = 0; […]

Come faccio a svolgere una funzione che coinvolge la ricorsione in coda del futuro?

Nella mia app Scala, ho una funzione che chiama una funzione che restituisce un risultato di tipo Future [T]. Devo passare il risultato mappato alla mia chiamata di funzione ricorsiva. Voglio che questa coda sia ricorsiva, ma la mappa (o flatMap) sta infrangendo la capacità di farlo. Ricevo un errore “Chiamata ricorsiva non in posizione […]

Il valore di ritorno della funzione ricorsiva è ‘indefinito’

Ogni volta che eseguo questo snippet, console.log before return restituisce l’array con 20 volte il valore 23. Tuttavia console.log (Check (users, 0, 20)); ritorna solo ‘indefinito’. Che cosa sto facendo di sbagliato? var users = [23, 23, 23, 23, 23, 23, 23, 23, 23, 23]; console.log(Check(users, 0, 20)); function Check(ids, counter, limit){ ids.push(23); // Recursion […]

Come lavorare su una sottomatrice in una matrice tramite puntatore?

Ho una matrice di dimensioni n. Prendi un esempio: La mia funzione ricorsiva esegue l’elaborazione sugli elementi che si trovano nel bordo della matrice. Ora voglio chiamarlo (la chiamata ricorsiva) sulla matrice quadrata interna: Questo è il prototipo della mia funzione ricorsiva: void rotate(int** mat, size_t n); So che un array 2D è un array […]