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

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

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

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