A single linked list is a linear data structure where each node points to the next node in the list via a link. It contains a data field for storing the node's value and a next field containing the address of the next node. A doubly linked list also contains a previous link to allow traversal in both directions. Common operations on linked lists include insertion, deletion, and traversal of the nodes.