DSA Flashcards

1
Q

is a way to store data

A

data structure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

If we want to store data about people we are related to, we use a ___ ____ as the data structure

A

family tree

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

give us the possibility to manage large amounts of data efficiently for uses such as large databases and internet indexing services

A

Data structures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

are essential ingredients in creating fast and powerful algorithms.

A

Data structures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

In Computer Science there are two different kinds of data structures

A

Primitive Data Structures
Abstract Data Structures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

A cooking recipe written on a piece of paper is an example of an

A

algorithm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

are basic data structures provided by programming languages to represent single values, such as integers, floating-point numbers, characters, and booleans

A

Primitive Data Structures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

are higher-level data structures that are built using primitive data types and provide more complex and specialized operations

A

Abstract Data Structures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

is a set of step-by-step instructions to solve a given problem or achieve a specific goal

A

algorithm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

DSA stands for

A

Data structures and algorithms

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

the step-by-step instructions are written in a programming language,

A

algorithms in Computer Science

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

is about finding efficient ways to store and retrieve data, to perform operations on data, and to solve specific problems

A

DSA

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

By understanding DSA, you can

A

Decide which data structure or algorithm is best for a given situation.

Make programs that run faster or use less memory.

Understand how to approach complex problems and solve them in a systematic way.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

algorithms in this tutorial are not worth much without a __ ___ to work on

A

data structure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

A data structure is not worth much if you cannot search through it or manipulate it efficiently using ___

A

algorithms

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

DSA is fundamental in nearly every part of
the software world:

A

Operating Systems
● Database Systems
● Web Applications
● Machine Learning
● Video Games
● Cryptographic Systems
● Data Analysis
● Search Engines

15
Q

algorithm must consist of a
finite sequence of steps, ensuring it
concludes with a specific endpoint or
output, rather than continuing indefinitely

A

Finiteness

15
Q

Characteristics of a Very Good Algorithm

A

Finiteness
Definiteness
Input/Output
Effectiveness
Generality

16
Q

An algorithm must have
precise definitions for each step, with
clear and simple instructions to ensure
that every step is easily understood and
executable

A

Definiteness

17
Q

An algorithm necessitates one or
more inputs, which are the initial values
provided before processing begins. These
inputs must fall within a specified range of
acceptable values

A

Input

18
Q

An algorithm must generate one
or more outputs, which are the results
obtained after all steps are completed. The
connection between the inputs and the
resulting outputs should be clearly defined

A

Output

19
Q

The stages of an algorithm
must be simple enough to be executed
within a finite time using basic
operations. Each operation should be
feasible and practical with the available
resources

A

Effectiveness

20
Q

An algorithm should be
capable of addressing a range of
problems, not just a single specific case. It
should provide a general solution that can
handle various inputs within a defined
range or domain

A

Generality

21
Q

A measure of the
amount of time an algorithm takes to run,
depending on the amount of data the
algorithm is working on

A

Time Complexity

22
Q

measure of the
amount of memory an algorithm uses,
depending on the amount of data the
algorithm is working on

A

Space Complexity

23
Q

mathematical notation
that describes the limiting behavior of a
function when the argument tends
towards a particular value or infinity. Used
in this tutorial to describe the time
complexity of an algorithm

A

Big O Notation

24
Q

programming technique
where a function calls itself

A

Recursion

25
Q

A method of
solving complex problems by breaking
them into smaller, more manageable
sub-problems, solving the sub-problems,
and combining the solutions. Recursion is
often used when using this method in an
algorithm

A

Divide and Conquer

26
Q

simple and
straightforward way an algorithm can
work by simply trying all possible
solutions and then choosing the best one

A

Brute Force