Genetic algorithms are a type of evolutionary algorithm that mimics natural selection. They operate on a population of potential solutions applying operators like selection, crossover and mutation to produce the next generation. The algorithm iterates until a termination condition is met, such as a solution being found or a maximum number of generations being produced. Genetic algorithms are useful for optimization and search problems as they can handle large, complex search spaces. However, they require properly defining the fitness function and tuning various parameters like population size, mutation rate and crossover rate.