# Vectors in Julia

Vectors in Julia are a collection of elements just like other collections like Array, Sets, Dictionaries, etc. Vector are different from Sets because vectors are ordered collections of elements, and can hold duplicate values, unlike sets which require all the elements to be unique. Vectors are one-dimensional arrays, and support mostly the same interface as their multi-dimensional counterparts.

Syntax:

```vector_name = [value1, value2, value3,..]
vector_name = Vector{DataType}([value1, value2, value3,..])```

Note: Vector{T} where T is some type means the same as Array{T,1}.

```Vector{Int}
Array{Int64,1}
# Vector{Int} = one-dimensional Vector of Int64.
Vector{Float64}
Array{Float64,1}```

### 1D Vector

A 1D Vector or 1-dimensional Vector is a linear representation of elements. A 1D Vector can only have either a row or a column. It represents a type of list that can be accessed by subsequent memory locations. Vectors can be resized. Elements can be added or removed from the front or back of the vector.

## Julia

 `A ``=` `[``1``, ``2``, ``3``]` `3``-``element Array{Int64,``1``}:` ` ``1` ` ``2` ` ``3`

### Creating a Vector

A Vector in Julia can be created with the use of a pre-defined keyword Vector() or by simply writing Vector elements within square brackets([]). There are different ways of creating Vector.

```vector_name = [value1, value2, value3,..]
or
vector_name = Vector{Datatype}([value1, value2, value3,..])```

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `vector ``=` `[``1``, ``2``, ``3``, ``4``] ` `println(vector)`   `# Vector{T}(undef, n)` `Vector{Float64}(undef, ``3``)`

Output:

```julia> vector = [1, 2, 3, 4]
4-element Array{Int64,1}:
1
2
3
4

julia> Vector{Float64}(undef, 3)
3-element Array{Float64,1}:
6.90966e-310
6.90966e-310
6.90966e-310```

### Accessing Vector elements

Elements of a vector can be accessed by passing the index of the value in the vector as a parameter to the vector_name. This index is passed within ‘[ ]’. A range of vector elements can be accessed by passing the index range with the use of ‘:’.

Example: Accessing elements in a Vector

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a Vector ` `vector ``=` `[``1``, ``2``, ``3``, ``"Geeks"``, ``"tutorial"``, ``"Geeks"``] ` `  `  `# Passing index value ` `println(vector[``2``])`   `# Accessing last value ` `println(vector[end]) `   `# Passing a range of indices ` `println(vector[``2``:``3``]) ``# selects the second and third elements`   `# Access every other element` `println(vector[``1``:``2``:end])`

Output:

```2
Geeks
Any[2, 3]
Any[1, 3, "tutorial"]```

### Push Operation on Vectors

It pushes the elements into a vector from the rear end. This push operation is performed with the use of a predefined push!() function.

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `[``1``, ``2``, ``3``, ``4``] `   `# push 5 in vector` `push!(V, ``5``)`   `# return length of vector` `println(length(V))`   `# print vector` `println(V)`

Output:

```5
1
2
3
4
5```

### Pop Operation on Vectors

It is used to pop or remove elements from a vector from the rear end. This pop operation is performed with the use of pop!() function.

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `[``1``, ``2``, ``3``, ``4``, ``5``] `   `# remove 5 from vector` `pop!(V)`   `# Printing vector` `println(V)`

Output:

```1
2
3
4```

### Adding elements from the Front end

Julia provides a predefined function called unshift!() to push the elements into a vector from the front end.

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `[``1``, ``2``, ``3``, ``4``] `   `# push 5 in vector at front` `pushfirst!(V, ``5``)`   `# Printing vector` `println(V)`

Output:

```5
1
2
3
4```

### Removing elements from the Front End

Julia provides a predefined function called shift!() which is used to pop or remove elements from a vector from the front.

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `[``1``, ``2``, ``3``, ``4``, ``5``] `   `# remove 1 from vector` `popfirst!(V)`   `# Printing Vector` `println(V)`

Output:

```2
3
4
5```

### Adding List of Elements to a Vector

To add a list of items into a vector, julia provides a predefined function append!().

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `Vector{Int64}([``1``, ``2``, ``3``, ``4``]) `   `# append a list of items in a vector` `append!(V, [``5``, ``6``, ``7``])`   `# Printing Vector` `println(V)`

Output:

```1
2
3
4
5
6
7```

### Sum of Vector elements

Sum of vector elements can be calculated with the use of Julia’s predefined function sum().

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `Vector{Int64}([``1``, ``2``, ``3``, ``4``]) `   `# print sum of vector element` `println(``sum``(V))`

Output:

`10`

### Mean of Vector Elements

To compute the average of vector elements, Julia provides a predefined function mean() to calculate the average of elements.

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V ``=` `Vector{Int64}([``1``, ``2``, ``3``, ``4``]) `   `# print average of vector element` `println(mean(V))`

Output:

`2`

• Vector addition uses ‘+’ and vector subtraction uses ‘ -‘.
• The arrays must have the same length

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V1 ``=` `[``1``, ``2``, ``3``, ``4``, ``5``] ` `V2 ``=` `[``6``, ``7``, ``8``, ``9``, ``10``]`   `# Addition of Vector` `println(V1 ``+` `V2)`   `# Subtraction of Vector` `println(V2 ``-` `V1)`

Output:

```Any[7, 9, 11, 13, 15]
Any[5, 5, 5, 5, 5]```

• The scalar is added to each entry of the vector.
• Scalar-vector multiplication uses *

## Julia

 `# Julia program to illustrate  ` `# the use of Vector` `  `  `# Creating a 1D Vector` `V1 ``=` `[``1``, ``2``, ``3``, ``4``, ``5``] `   `# Addition of scaler-Vector` `println(V1 ``+` `5``)`   `# Multiplication of Vector` `println(V1 ``*` `2``)`

Output:

```Any[6, 7, 8, 9, 10]
Any[2, 4, 6, 8, 10]```

Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!