<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>dsa on Sadman Kabir Soumik</title>
    <link>https://blog.sksoumik.com/series/dsa/</link>
    <description>Recent content in dsa on Sadman Kabir Soumik</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <copyright>Copyright © 2022, Sadman Kabir Soumik</copyright>
    <lastBuildDate>Fri, 23 Apr 2021 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.sksoumik.com/series/dsa/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Python Collections Module Tutorial</title>
      <link>https://blog.sksoumik.com/software-engineering/tutorial-on-python-collections-module/</link>
      <pubDate>Fri, 23 Apr 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.sksoumik.com/software-engineering/tutorial-on-python-collections-module/</guid>
      <description>
        
          
            Python&#39;s collections module implements specialized container datatypes providing alternatives to Python’s general purpose built-in containers, dict, list, set, and tuple.
This module has the following containers:
11. Counter() 22. namedtuple() 33. deque() 44. defaultdict() 55. OrderedDict() 66. UserDict() 77. UserString() 88. UserList() 99. ChainMap() In my experience, out of all of these modules Counter, defaultdict, OrderedDict, and deque are the most useful ones. The following section explains how Counter, defaultdict, OrderedDict, and deque works.
          
          
        
      </description>
    </item>
    
    <item>
      <title>Lambda, Map, Filter, and Reduce in Python</title>
      <link>https://blog.sksoumik.com/software-engineering/lambda-map-filter-reduce-python/</link>
      <pubDate>Fri, 11 Dec 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.sksoumik.com/software-engineering/lambda-map-filter-reduce-python/</guid>
      <description>
        
          
            Lambda The Lambda function, also known as an anonymous or inline function, is a way to create a function without giving it a name. This can be useful when you need to define a function that will only be used once, or when you want to pass a function as an argument to another function.
Here is an example of using a Lambda function in Python:
1# Define a Lambda function that takes two arguments and returns their sum 2sum_func = lambda x, y: x + y 3 4# Call the Lambda function 5result = sum_func(1, 2) # Returns 3 Map The Map function in Python applies a function to each element in a sequence of data.
          
          
        
      </description>
    </item>
    
    <item>
      <title>Unleashing the Power of Bit Manipulation in Computer Science</title>
      <link>https://blog.sksoumik.com/software-engineering/bit_manupulation_in_python/</link>
      <pubDate>Fri, 12 Jun 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.sksoumik.com/software-engineering/bit_manupulation_in_python/</guid>
      <description>
        
          
            Bit Manipulation Bit manipulation is a technique used in computer science to manipulate data at the level of its binary representation. This can be useful for a variety of tasks, such as low-level optimization, data compression, and cryptography.
At its core, bit manipulation involves working with individual bits, rather than larger units of data such as bytes or words. This is typically done using bitwise operators, which perform operations on the individual bits of a number.
          
          
        
      </description>
    </item>
    
    <item>
      <title>Dynamic Programming - Step by Step Guide with Examples</title>
      <link>https://blog.sksoumik.com/software-engineering/dynamic-programming-step-by-step-explanation/</link>
      <pubDate>Mon, 23 Dec 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.sksoumik.com/software-engineering/dynamic-programming-step-by-step-explanation/</guid>
      <description>
        
          
            Dynamic programming is a method for solving complex problems by breaking them down into smaller subproblems. It is a mathematical optimization technique that is mainly used for solving problems that exhibit the properties of overlapping subproblems and optimal substructure.
The basic idea behind dynamic programming is to solve a complex problem by breaking it down into smaller subproblems, solving each of those subproblems just once, and storing their solutions. The solutions to the subproblems are then used to solve the original problem.
          
          
        
      </description>
    </item>
    
    <item>
      <title>Understanding Logarithm Function</title>
      <link>https://blog.sksoumik.com/software-engineering/understanding-logarithm-function-computer-science/</link>
      <pubDate>Tue, 06 Aug 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.sksoumik.com/software-engineering/understanding-logarithm-function-computer-science/</guid>
      <description>
        
          
            Logarithms are mathematical operations that are the inverse of exponentiation. In other words, if we have a base b and an exponent x, the logarithm of the resulting number y to the base b is x. This can be written as log_b(y) = x.
For example, the logarithm of 1000 to base 10 is 3, because 10^3 = 1000. Similarly, the logarithm of 100 to base 10 is 2, because 10^2 = 100.
          
          
        
      </description>
    </item>
    
    <item>
      <title>Understanding Graph Traversal - BFS vs DFS</title>
      <link>https://blog.sksoumik.com/software-engineering/understanding-graph-traversal-bfs-dfs/</link>
      <pubDate>Tue, 12 Mar 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.sksoumik.com/software-engineering/understanding-graph-traversal-bfs-dfs/</guid>
      <description>
        
          
            Breadth-first search (BFS) and depth-first search (DFS) are two algorithms for traversing graphs. These algorithms are used to search for specific nodes or to find the shortest path between two nodes in a graph.
BFS The breadth-first search (BFS) algorithm is a graph traversal algorithm that explores all of the neighbors of a starting node before moving on to any of the neighbor&#39;s neighbors. It is called a &amp;quot;breadth-first&amp;quot; algorithm because it explores the neighbors at each level of the graph before moving on to the next level.
          
          
        
      </description>
    </item>
    
  </channel>
</rss>
