<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Diksha Rai</title>
    <description>The latest articles on Forem by Diksha Rai (@itsdr9).</description>
    <link>https://forem.com/itsdr9</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F655644%2Fbef5de92-5854-4b2f-b67d-225f37f5b5c1.png</url>
      <title>Forem: Diksha Rai</title>
      <link>https://forem.com/itsdr9</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/itsdr9"/>
    <language>en</language>
    <item>
      <title>Getting Started with OpenCV - Reversing a Video</title>
      <dc:creator>Diksha Rai</dc:creator>
      <pubDate>Sat, 07 Jan 2023 08:50:21 +0000</pubDate>
      <link>https://forem.com/itsdr9/getting-started-with-opencv-reversing-a-video-1ipa</link>
      <guid>https://forem.com/itsdr9/getting-started-with-opencv-reversing-a-video-1ipa</guid>
      <description>&lt;p&gt;OpenCV's documentation is the best place to learn OpenCV, check it out. &lt;/p&gt;

&lt;p&gt;Learn the basics of Image and Video Handling and then try reversing a video by yourself. If you are stuck here is the code for your reference.&lt;/p&gt;

&lt;p&gt;Make sure you are comfortable with Numpy before jumping on it OpenCV.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
# Import the library 
import cv2 as cv

#Video Capture Instance
cap = cv.VideoCapture('videopath.mp4')

#Total number of frames in video
frames = cap.get(cv.CAP_PROP_FRAME_COUNT)

#Frames per second 
fps = cap.get(cv.CAP_PROP_FPS)

#height and width of video
height = cap.get(cv.CAP_PROP_FRAME_HEIGHT)
width = cap.get(cv.CAP_PROP_FRAME_WIDTH)

fourcc = cv.VideoWriter_fourcc(*'MJPG')
out = cv.VideoWriter('reversed_vid_name.avi', fourcc,fps ,(int(width*0.5), int(height*0.5)))

#We can print the progress of the video as it will take some time depending on video quality and length.
# print("No. of frames are : {}".format(frames))
# print("Frames per second is :{}".format(fps))

# We get the index of the last frame of the video file
frame_index = frames-1

if(cap.isOpened()):
    while(frame_index!=0):
        cap.set(cv.CAP_PROP_POS_FRAMES, frame_index)
        ret, frame = cap.read()
        frame = cv.resize(frame,(int(width*0.5), int(height*0.5)))

        #OPTIONAL : To show the reversing video
        #cv2.imshow('winname', frame)

        #Writing the reversed video 
        out.write(frame)
        #Decrementing Frame index at each step
        frame_index = frame_index-1

        #Printing the progress
        if(frame_index%100==0):
            print(frame_index)
        # if(cv2.waitKey(2)==ord('q')):
        #   break
out.release()
cap.release()

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>beginners</category>
      <category>fullstack</category>
      <category>learning</category>
      <category>community</category>
    </item>
    <item>
      <title>Singly Linked Lists</title>
      <dc:creator>Diksha Rai</dc:creator>
      <pubDate>Sat, 12 Mar 2022 15:08:53 +0000</pubDate>
      <link>https://forem.com/itsdr9/singly-linked-lists-5434</link>
      <guid>https://forem.com/itsdr9/singly-linked-lists-5434</guid>
      <description>&lt;p&gt;As I have already discussed in the &lt;a href="https://dev.to/itsdr9/linked-lists-l5g"&gt;previous blog&lt;/a&gt; that a node in a linked list contains the data element and the address of the next node. When the node of the linked list contains only the data element and the address to the next node these kinds of linked lists are known as singly-linked lists.&lt;br&gt;
Here is a representation of the singly linked list&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--berqWVUE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647093689918/hQYmcfjDY.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--berqWVUE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647093689918/hQYmcfjDY.png" alt="linkedlist head.png" width="880" height="79"&gt;&lt;/a&gt;&lt;br&gt;
The last node of the linked list points to null, which means it contains no address.&lt;br&gt;
So one node of the linked list contains:- a data element and address of the next node. So let's try to code this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A linked list contains several nodes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So we will create a linked list class, which will have a subclass for nodes.&lt;br&gt;
Suppose we created two nodes of the linked list where the first node contains the data element and the address to the second node and the second node contains the data element and it points to null because there is no node after that.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ddQmYS12--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647094332833/p_CafA_SC.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ddQmYS12--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647094332833/p_CafA_SC.png" alt="image.png" width="539" height="111"&gt;&lt;/a&gt;&lt;br&gt;
We can access the second node using the first node, but wait how will we access the first node?&lt;br&gt;
We need a pointer that will point to the first node of the linked list.&lt;br&gt;
So we will create a node which we will call 'head' to point to the first node of the linked list.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--n5gLUfku--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647094705081/K5ugfbZ6X.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--n5gLUfku--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647094705081/K5ugfbZ6X.png" alt="image.png" width="539" height="324"&gt;&lt;/a&gt;&lt;br&gt;
Now we can easily access each node of the linked list, we can access first node using head, and second node using the first node.&lt;br&gt;
The above things can be coded like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class LinkedList {

    private Node head;

    private class Node {
        private int value;
        private Node next;

    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I assume that you have some familiarity with object-oriented programming beforehand.&lt;br&gt;
Now when we create a node of the linked list, we want to pass a value that will be the data element contained by the node. So will create a constructor of the node class for this purpose.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public Node(int value) {
            this.value = value;
            this.next= null;
        }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now the whole code is given below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public class LinkedList {

    private Node head;

    private class Node {
        private int value;
        private Node next;

        public Node(int value) {
            this.value = value;
            this.next= null;
        }

    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now let us look what are the operations we can perform on the linked list. There are 6 basic operations that can be performed on these linked lists, and these operations will make things crystal clear.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Traversal&lt;/li&gt;
&lt;li&gt;Insertion&lt;/li&gt;
&lt;li&gt;Deletion&lt;/li&gt;
&lt;li&gt;Searching&lt;/li&gt;
&lt;li&gt;Sorting&lt;/li&gt;
&lt;li&gt;Reversal&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Traversing the linked list&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The most important point to consider in a linked list is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If the head node is lost the whole list is lost.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In order to traverse the linked list, we will create a node and set it equal to the head node, which means it will also point to the first node of the list.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0b4Vqn7p--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647095646269/84A5QmHAr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0b4Vqn7p--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647095646269/84A5QmHAr.png" alt="image.png" width="539" height="324"&gt;&lt;/a&gt;&lt;br&gt;
When&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;temp == null
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
 means we have reached the end of the linked list.&lt;br&gt;
Here is the code to traverse the linked list:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public void traverse() {
        Node temp = head;
        while (temp != null) {
            temp = temp.next;
        }
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--achaS5rP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647096964243/Y9t_oL3xR.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--achaS5rP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647096964243/Y9t_oL3xR.png" alt="image.png" width="724" height="1622"&gt;&lt;/a&gt;&lt;br&gt;
We will continue the remaining operations in the next blog. Stay tuned :)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Linked Lists</title>
      <dc:creator>Diksha Rai</dc:creator>
      <pubDate>Sat, 12 Mar 2022 06:46:14 +0000</pubDate>
      <link>https://forem.com/itsdr9/linked-lists-l5g</link>
      <guid>https://forem.com/itsdr9/linked-lists-l5g</guid>
      <description>&lt;p&gt;You may have worked with arrays before jumping on linked lists. Arrays are one of the most popular and simplest data structures. Both arrays and linked lists are linear data structures. But they have certain advantages and disadvantages over one another, that's the reason why they exist.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0nznskL2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647064410973/VtIu-1wWo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0nznskL2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647064410973/VtIu-1wWo.png" alt="Untitled-2021-12-02-1413.png" width="609" height="152"&gt;&lt;/a&gt;&lt;br&gt;
This is how we represent an array, they store elements in a contagious fashion. If you haven't heard of arrays then check out the following link. It covers everything you need to know about arrays.&lt;/p&gt;

&lt;p&gt;All about Arrays&lt;/p&gt;

&lt;p&gt;As you know, elements in an array are stored in contiguous memory locations. Here is a representation:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2FUkeaOT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647065246408/HZi651SuT.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2FUkeaOT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647065246408/HZi651SuT.png" alt="image.png" width="779" height="576"&gt;&lt;/a&gt;&lt;br&gt;
If we want to store say 5 elements in an array then we can do that &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---3JIbLzU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647065740228/MeA7Hk1Nj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---3JIbLzU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647065740228/MeA7Hk1Nj.png" alt="image.png" width="779" height="576"&gt;&lt;/a&gt;&lt;br&gt;
But what if we want to continuously update the number of elements in the array and the chunk of contiguous space available is less. Or even if the space is available we will have to copy elements from one location to another. That will cost us a lot of memory, So linked lists come to the rescue.&lt;/p&gt;

&lt;p&gt;This doesn't mean that arrays are of no use, there are certain advantages of arrays. Let's look at the first then we will discuss linked lists and the disadvantages of arrays.&lt;br&gt;
Arrays are stored contiguously that's why each element are easily accessed. So if you have a case where you set the data once and you don't have to update it. You just need to access it, then there is no better solution than storing them in an array.&lt;/p&gt;

&lt;p&gt;But if you want to add some data to the existing one or delete some, then arrays are not efficient in this case. This is one of the major disadvantages of arrays.&lt;br&gt;
For this reason, linked lists come into the picture.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uXv7Q3zi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647066532990/On4Wp_8LN.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uXv7Q3zi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647066532990/On4Wp_8LN.png" alt="linkedlist head.png" width="880" height="79"&gt;&lt;/a&gt;&lt;br&gt;
One node of the linked list contains a data element and the address of the next node. Both data part and address part combined are known as a 'node'.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1Y-8PHAA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647066893041/AVJQWS6xb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1Y-8PHAA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647066893041/AVJQWS6xb.png" alt="image.png" width="709" height="576"&gt;&lt;/a&gt;&lt;br&gt;
Nodes can be at any place in the memory, the previous node will contain the address to the next node. Hence the insertion and deletion are easily done because we just need to update the address.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--En9xzpTf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647067095805/2sYXXaR_x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--En9xzpTf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1647067095805/2sYXXaR_x.png" alt="image.png" width="709" height="576"&gt;&lt;/a&gt;&lt;br&gt;
Based on the address of the nodes they contain there are 3 types of linked lists.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Singly Linked Lists&lt;/li&gt;
&lt;li&gt;Doubly Linked Lists&lt;/li&gt;
&lt;li&gt;Circular Linked Lists&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>java</category>
    </item>
    <item>
      <title>First Class Functions</title>
      <dc:creator>Diksha Rai</dc:creator>
      <pubDate>Thu, 03 Mar 2022 14:44:54 +0000</pubDate>
      <link>https://forem.com/itsdr9/first-class-functions-18gg</link>
      <guid>https://forem.com/itsdr9/first-class-functions-18gg</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;A programming language is said to have First-class functions when functions in that language are treated like any other variable.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Functions are also called first-class objects, this means that functions should have all the properties which object haves.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The properties a first-class function have are:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
A function can be assigned to a variable. Following is the code explaining that.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Defining a function square
def square(num):
    return num*num
#assinging function to a variable
x=square #now x is same as square and we can treat x as a function
print (square)
print(x)
#both print statements will have same results
#calling the functions
print(square(2)) # output-4
print(f(2))#output-4


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
A function can be passed as an argument to other functions.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#defining a function
def multiple_of_two(num):
    return 2*num


#defining another function
def my_func(func, a_list_of_integers):

    result=[ ] #creating an empty list which will be used later in function
    for i in a_list_of_integers:

        result.append(func(i))
    return result # each element of list is passed as an argument to "func" function
#and the output of that function is then added to "result"


multiplication = my_func(multiple_of_two, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

print(multiplication) #output-[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;A function can be returned from other functions.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def greetings(name):
    def greet():
        print("Hi "+msg)
        return
    return greet #returning greet function from greetings function


my_func = greetings("xyz")
my_func() #calling the function


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>What is VCS ?</title>
      <dc:creator>Diksha Rai</dc:creator>
      <pubDate>Wed, 11 Aug 2021 07:25:31 +0000</pubDate>
      <link>https://forem.com/itsdr9/what-is-vcs-5bji</link>
      <guid>https://forem.com/itsdr9/what-is-vcs-5bji</guid>
      <description>&lt;p&gt;In simple terms, version control is nothing but a system that keeps track of the changes made to source code or files. With a version control system, you can look back at the changes made to a particular file, either by you or another person, by accessing the version control database. This system gives you the ability to compare different versions of a file, thus allowing you to stay informed about the changes that have happened over a period of time.&lt;/p&gt;

&lt;p&gt;The version control system can be referred to as a database that stores snapshots of different files in a project. These snapshots are taken every time a file is modified. It maintains all the records of the different versions of a file. In addition to comparing different versions of a file, VCSs also allows you to switch between them. VCSs can either be distributed or centralized. Let us see how these two types differ.&lt;/p&gt;

&lt;p&gt;Centralized version control systems use a single, centralized server to store all the different versions of a file. Users can access these files by gaining access to this centralized server. Now, there is a disadvantage associated with this type of VCS. If the central server fails to function due to any reason, the entire history stored on its will be gone and no one will be able to recover any version/versions of the lost files.&lt;/p&gt;

&lt;p&gt;Git is one of the most popular VCS, and I will discuss about Git in the next post.&lt;br&gt;
Till then keep learning and keep sharing.&lt;/p&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>vcs</category>
    </item>
    <item>
      <title>DSA and Languages</title>
      <dc:creator>Diksha Rai</dc:creator>
      <pubDate>Tue, 10 Aug 2021 17:34:20 +0000</pubDate>
      <link>https://forem.com/itsdr9/dsa-and-languages-4eib</link>
      <guid>https://forem.com/itsdr9/dsa-and-languages-4eib</guid>
      <description>&lt;p&gt;As a beginner we generally get confused about which language we should choose in order to have a safer career, I was also confused about the same in my freshman year. My journey as a programmer started in my first-year of college, many people learn programming since their school days and this confusion is quite lesser in them. But for people like me it is very much seen among us, and then students waste a lot of time switching over languages and not learning the core concepts of it. They just want to learn as many languages they can, and end up learning none completely.&lt;/p&gt;

&lt;p&gt;In my first-year I also did the same the I tried to learn all the languages and stuffs as much as I can in shorter span of time, however I was having a good grip in one language so learning the other language was quite easier for me.&lt;br&gt;
But we need to understand the fact that language doesn't actually matter in each and every language you will almost use the same approach to solve a problem, they are just syntactically different. Our main focus should be that are we able to solve problems in any programming language be it C C++ Java Python anything. When you know one language completely learning other becomes easier for you, try solving problems as much as you can in any language of your choice.&lt;/p&gt;

&lt;p&gt;And avoid wasting time on switching over languages, use the platforms like Leetcode Hackkerrank CodeChef to practice your skills, and don't try to cheat in that because that's not going to help you.&lt;/p&gt;

</description>
      <category>algorithms</category>
      <category>cpp</category>
    </item>
  </channel>
</rss>
