0% found this document useful (0 votes)
4 views4 pages

Algorithm Tree Sorting Notes

An algorithm is a structured set of instructions for solving problems, akin to a recipe. It includes key features such as input, clear steps, output, and efficiency, and is used in various applications like searching and sorting. A tree is a hierarchical data structure with nodes representing relationships, and sorting involves arranging data in specific orders using different algorithms.

Uploaded by

noha.mamdouh.oct
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views4 pages

Algorithm Tree Sorting Notes

An algorithm is a structured set of instructions for solving problems, akin to a recipe. It includes key features such as input, clear steps, output, and efficiency, and is used in various applications like searching and sorting. A tree is a hierarchical data structure with nodes representing relationships, and sorting involves arranging data in specific orders using different algorithms.

Uploaded by

noha.mamdouh.oct
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

What is an Algorithm?

An algorithm is a step-by-step set of instructions used to solve a problem or perform a task.

In Simple Words:

An algorithm is like a recipe for solving a problem:

- It tells you exactly what to do,

- In what order,

- To get a correct result.

Real-Life Example:

Making a cup of tea is an algorithm:

1. Boil water

2. Put a tea bag in a cup

3. Pour the hot water into the cup

4. Wait 3 minutes

5. Remove the tea bag

6. Add sugar or milk

7. Stir and enjoy

Example in Programming (JavaScript):

function findMax(numbers) {

let max = numbers[0];

for (let i = 1; i < [Link]; i++) {

if (numbers[i] > max) {

max = numbers[i];

}
}

return max;

Key Features of a Good Algorithm:

- Input: Takes data to work on (e.g., numbers)

- Steps: Has clear steps to follow

- Output: Produces the correct answer

- Efficiency: Works fast and uses little memory (if possible)

Where Algorithms Are Used:

- Searching (e.g., Google)

- Sorting data (e.g., sort products by price)

- Navigation (e.g., GPS routes)

- Password checks

- Artificial Intelligence

What is a Tree (in Data Structures)?

A tree is a hierarchical data structure made up of nodes. It's used to represent relationships like a

family tree, file system, or HTML DOM.

Basic Terms:

- Root: The top-most node

- Node: Each item in the tree

- Child: A node below another node

- Parent: A node with children

- Leaf: A node with no children


- Edge: The connection between nodes

- Subtree: A smaller tree inside the main tree

Visual Example:

/\

B C

/\ \

D E F

Common Tree Types:

- Binary Tree: Each node has at most 2 children

- Binary Search Tree (BST): Left < Parent < Right

- Heap Tree: Complete tree used for priority

- Trie: Used for fast word lookups

- DOM Tree: Used in web pages (HTML structure)

Use Cases:

- File systems (folders and files)

- Game decision trees (AI)

- HTML structure (DOM)

- Searching and sorting algorithms

What Does "Sort" Mean?

To sort means to arrange data in a specific order.

Sorting Orders:
- Ascending: Small to Big (1, 2, 3, 4...)

- Descending: Big to Small (9, 6, 2, 1...)

- Alphabetical: A to Z or Z to A

Example in JavaScript:

let numbers = [5, 2, 9, 1, 3];

[Link]();

[Link](numbers); // [1, 2, 3, 5, 9]

Sorting Algorithms:

- Bubble Sort: Swap nearby values

- Selection Sort: Find the smallest each time

- Merge Sort: Divide and conquer

- Quick Sort: Pick pivot and split

You might also like