how to convert 2d array to 1d array in c++ code example

Example 1: array 2d to 1d

int array[width * height];

 int SetElement(int row, int col, int value)
 {
    array[width * row + col] = value;  
 }

Example 2: numpy convert 1d array to 2d

import numpy as np 

# 1D array 
one_dim_arr = np.array([1, 2, 3, 4, 5, 6])

# to convert to 2D array
# we can use the np.ndarray.reshape(shape) function 
# here shape is given by two integers seperated by a comma
# the two integers specify m,n for the new matrix 
# ensure that the matrix that you are trying to generate
# has a size that meets the number of elements in the 1D array. 
# for that make sure that 
# m * n = number of elements in the one dimentional array 

two_dim_arr = one_dim_arr.reshape(1, 6)

#which returns a 2D array
print(two_dim_arr)


# confirmed by the array.ndim attribute
print(two_dim_arr.ndim)

# you can even specify one of the dimensions as unknown by passing -1
# numpy will infer the length using the array and remaining dimensions

two_dim_arr = one_dim_arr.reshape(1,-1)

Tags:

Cpp Example