Language Switcher Demo
All code blocks are pre-rendered server-side. No Suspense, no skeleton, no flash.
Fibonacci
// Fibonacci with memoization
const fibonacci = (() => {
const cache = new Map<number, number>();
return function fib(n: number): number {
if (n <= 1) return n;
if (cache.has(n)) {
return cache.get(n)!;
}
const result = fib(n - 1) + fib(n - 2);
cache.set(n, result);
return result;
};
})();
// Calculate first 10 Fibonacci numbers
const sequence = Array.from({ length: 10 }, (_, i) => fibonacci(i));
console.log(sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]// Fibonacci with memoization
const fibonacci = (() => {
const cache = new Map();
return function fib(n) {
if (n <= 1) return n;
if (cache.has(n)) {
return cache.get(n);
}
const result = fib(n - 1) + fib(n - 2);
cache.set(n, result);
return result;
};
})();
// Calculate first 10 Fibonacci numbers
const sequence = Array.from({ length: 10 }, (_, i) => fibonacci(i));
console.log(sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]# Fibonacci with memoization
from functools import cache
@cache
def fibonacci(n: int) -> int:
if n <= 1:
return n
return fibonacci(n - 1) + fibonacci(n - 2)
# Calculate first 10 Fibonacci numbers
sequence = [fibonacci(i) for i in range(10)]
print(sequence) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]// Fibonacci with memoization
use std::collections::HashMap;
fn fibonacci(n: u64, cache: &mut HashMap<u64, u64>) -> u64 {
if n <= 1 {
return n;
}
if let Some(&result) = cache.get(&n) {
return result;
}
let result = fibonacci(n - 1, cache) + fibonacci(n - 2, cache);
cache.insert(n, result);
result
}
fn main() {
let mut cache = HashMap::new();
// Calculate first 10 Fibonacci numbers
let sequence: Vec<u64> = (0..10)
.map(|i| fibonacci(i, &mut cache))
.collect();
println!("{:?}", sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
}QuickSort
// Fibonacci with memoization
const fibonacci = (() => {
const cache = new Map<number, number>();
return function fib(n: number): number {
if (n <= 1) return n;
if (cache.has(n)) {
return cache.get(n)!;
}
const result = fib(n - 1) + fib(n - 2);
cache.set(n, result);
return result;
};
})();
// Calculate first 10 Fibonacci numbers
const sequence = Array.from({ length: 10 }, (_, i) => fibonacci(i));
console.log(sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]// Fibonacci with memoization
const fibonacci = (() => {
const cache = new Map();
return function fib(n) {
if (n <= 1) return n;
if (cache.has(n)) {
return cache.get(n);
}
const result = fib(n - 1) + fib(n - 2);
cache.set(n, result);
return result;
};
})();
// Calculate first 10 Fibonacci numbers
const sequence = Array.from({ length: 10 }, (_, i) => fibonacci(i));
console.log(sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]# Fibonacci with memoization
from functools import cache
@cache
def fibonacci(n: int) -> int:
if n <= 1:
return n
return fibonacci(n - 1) + fibonacci(n - 2)
# Calculate first 10 Fibonacci numbers
sequence = [fibonacci(i) for i in range(10)]
print(sequence) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]// Fibonacci with memoization
use std::collections::HashMap;
fn fibonacci(n: u64, cache: &mut HashMap<u64, u64>) -> u64 {
if n <= 1 {
return n;
}
if let Some(&result) = cache.get(&n) {
return result;
}
let result = fibonacci(n - 1, cache) + fibonacci(n - 2, cache);
cache.insert(n, result);
result
}
fn main() {
let mut cache = HashMap::new();
// Calculate first 10 Fibonacci numbers
let sequence: Vec<u64> = (0..10)
.map(|i| fibonacci(i, &mut cache))
.collect();
println!("{:?}", sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
}Binary Search
// Fibonacci with memoization
const fibonacci = (() => {
const cache = new Map<number, number>();
return function fib(n: number): number {
if (n <= 1) return n;
if (cache.has(n)) {
return cache.get(n)!;
}
const result = fib(n - 1) + fib(n - 2);
cache.set(n, result);
return result;
};
})();
// Calculate first 10 Fibonacci numbers
const sequence = Array.from({ length: 10 }, (_, i) => fibonacci(i));
console.log(sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]// Fibonacci with memoization
const fibonacci = (() => {
const cache = new Map();
return function fib(n) {
if (n <= 1) return n;
if (cache.has(n)) {
return cache.get(n);
}
const result = fib(n - 1) + fib(n - 2);
cache.set(n, result);
return result;
};
})();
// Calculate first 10 Fibonacci numbers
const sequence = Array.from({ length: 10 }, (_, i) => fibonacci(i));
console.log(sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]# Fibonacci with memoization
from functools import cache
@cache
def fibonacci(n: int) -> int:
if n <= 1:
return n
return fibonacci(n - 1) + fibonacci(n - 2)
# Calculate first 10 Fibonacci numbers
sequence = [fibonacci(i) for i in range(10)]
print(sequence) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]// Fibonacci with memoization
use std::collections::HashMap;
fn fibonacci(n: u64, cache: &mut HashMap<u64, u64>) -> u64 {
if n <= 1 {
return n;
}
if let Some(&result) = cache.get(&n) {
return result;
}
let result = fibonacci(n - 1, cache) + fibonacci(n - 2, cache);
cache.insert(n, result);
result
}
fn main() {
let mut cache = HashMap::new();
// Calculate first 10 Fibonacci numbers
let sequence: Vec<u64> = (0..10)
.map(|i| fibonacci(i, &mut cache))
.collect();
println!("{:?}", sequence); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
}