<?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>DEV Community: hebaShakeel</title>
    <description>The latest articles on DEV Community by hebaShakeel (@hebashakeel).</description>
    <link>https://dev.to/hebashakeel</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%2F453411%2F4e0b3729-aa1c-4511-b128-709226e7f063.jpg</url>
      <title>DEV Community: hebaShakeel</title>
      <link>https://dev.to/hebashakeel</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hebashakeel"/>
    <language>en</language>
    <item>
      <title>If Else Statements in Python</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Wed, 23 Aug 2023 06:13:57 +0000</pubDate>
      <link>https://dev.to/hebashakeel/if-else-statements-in-python-39b6</link>
      <guid>https://dev.to/hebashakeel/if-else-statements-in-python-39b6</guid>
      <description>&lt;p&gt;email = input("Enter your email id:" )&lt;br&gt;
password = input("Enter your password:" )&lt;/p&gt;

&lt;p&gt;if email == "&lt;a href="mailto:superpython@gmail.com"&gt;superpython@gmail.com&lt;/a&gt;" and password == "1234":&lt;br&gt;
---print("Welcome")&lt;br&gt;
elif email == "&lt;a href="mailto:superpython@gmail.com"&gt;superpython@gmail.com&lt;/a&gt;" and password != "1234":&lt;br&gt;
---print("Incorrect password")&lt;br&gt;
---password = input("Enter password again")&lt;br&gt;
---if password == "1234":&lt;br&gt;
------print("Finally correct")&lt;br&gt;
---else:&lt;br&gt;
------print("Still incorrect")&lt;br&gt;
else:&lt;br&gt;
---print("Incorrect credentials")&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>python</category>
    </item>
    <item>
      <title>Operators in Python</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Wed, 23 Aug 2023 05:52:32 +0000</pubDate>
      <link>https://dev.to/hebashakeel/operators-in-python-3hco</link>
      <guid>https://dev.to/hebashakeel/operators-in-python-3hco</guid>
      <description>&lt;p&gt;Operators are used to perform operations on variables and values. Python has following operators:&lt;/p&gt;

&lt;h2&gt;
  
  
  Arithmetic Operators
&lt;/h2&gt;

&lt;p&gt;x = 5&lt;br&gt;
y = 2&lt;br&gt;
print(x + y)&lt;br&gt;
o/p = 7&lt;/p&gt;

&lt;p&gt;print(x - y)&lt;br&gt;
o/p = 3&lt;/p&gt;

&lt;p&gt;print(x * y)&lt;br&gt;
o/p = 10&lt;/p&gt;

&lt;p&gt;print(x / y)&lt;br&gt;
o/p = 2.5&lt;/p&gt;

&lt;p&gt;print(x % y)&lt;br&gt;
o/p = 1&lt;/p&gt;

&lt;p&gt;print (x ** 2)  power of op&lt;br&gt;
o/p = 25&lt;/p&gt;

&lt;p&gt;print ( x // 2) performs integer division&lt;br&gt;
o/p = 2&lt;/p&gt;

&lt;h2&gt;
  
  
  Comparison Operators
&lt;/h2&gt;

&lt;p&gt;print(x &amp;gt; y)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;p&gt;print(x &amp;lt; y)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;print(x &amp;gt;= y)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;p&gt;print(x &amp;lt;= y)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;print(x == y)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;print(x != y)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;h2&gt;
  
  
  Logical Operators
&lt;/h2&gt;

&lt;p&gt;x = True&lt;br&gt;
y = False&lt;/p&gt;

&lt;p&gt;print(x or y)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;p&gt;print(x and y)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;print(not x)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;print(not y)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;h2&gt;
  
  
  Bitwise Operators
&lt;/h2&gt;

&lt;p&gt;They work on binary values&lt;/p&gt;

&lt;p&gt;x = 2&lt;br&gt;
y = 3&lt;/p&gt;

&lt;p&gt;print(x &amp;amp; y)&lt;br&gt;
o/p = 2&lt;/p&gt;

&lt;p&gt;binary of 2 = 010&lt;br&gt;
binary of 3 = 011&lt;br&gt;
performing bitwise and on 010 and 011, we get 010 (2 in decimal)&lt;/p&gt;

&lt;p&gt;print(x | y)&lt;br&gt;
o/p = 3&lt;br&gt;
performing bitwise or on 010 and 011, we get 011 (3 in decimal)&lt;/p&gt;

&lt;p&gt;print (x &amp;gt;&amp;gt; 2)&lt;br&gt;
o/p = 0&lt;/p&gt;

&lt;p&gt;print (y &amp;lt;&amp;lt; 3)&lt;br&gt;
o/p = 24&lt;/p&gt;

&lt;p&gt;print (~x)  # 1s complement&lt;br&gt;
o/p = -3&lt;/p&gt;

&lt;h2&gt;
  
  
  Assignment Operators
&lt;/h2&gt;

&lt;p&gt;a = 3&lt;br&gt;
print (a)&lt;br&gt;
o/p = 3&lt;/p&gt;

&lt;p&gt;a += 3&lt;br&gt;
o/p = 6&lt;/p&gt;

&lt;p&gt;a =- 3&lt;br&gt;
o/p = 3&lt;/p&gt;

&lt;p&gt;a *= 3&lt;br&gt;
o/p = 9&lt;/p&gt;

&lt;p&gt;a &amp;amp;= 3&lt;/p&gt;

&lt;p&gt;a++ and ++a does not exist in Python. Using this generates a Syntax Error.&lt;/p&gt;

&lt;h2&gt;
  
  
  Identity Operators
&lt;/h2&gt;

&lt;p&gt;Checks if 2 variables are on the same memory location.&lt;/p&gt;

&lt;p&gt;a = 3&lt;br&gt;
b = 3&lt;/p&gt;

&lt;p&gt;print (a is b)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;p&gt;a = [1,2,3]&lt;br&gt;
b = [1,2,3]&lt;/p&gt;

&lt;p&gt;print(a is b)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;print(a is not b)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;h2&gt;
  
  
  Membership Operator
&lt;/h2&gt;

&lt;p&gt;x = "Delhi"&lt;/p&gt;

&lt;p&gt;print("D" in x)&lt;br&gt;
o/p = True&lt;/p&gt;

&lt;p&gt;print ("D" not in x)&lt;br&gt;
o/p = False&lt;/p&gt;

&lt;p&gt;x = [1,2,3]&lt;br&gt;
print(5 in x)&lt;br&gt;
o/p = False&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>python</category>
    </item>
    <item>
      <title>Literals in Python</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Tue, 22 Aug 2023 17:22:15 +0000</pubDate>
      <link>https://dev.to/hebashakeel/literals-in-python-5d6l</link>
      <guid>https://dev.to/hebashakeel/literals-in-python-5d6l</guid>
      <description>&lt;p&gt;Literal is a raw data given in a variable. There are various types of literals:&lt;/p&gt;

&lt;h1&gt;
  
  
  Numeric Literals
&lt;/h1&gt;

&lt;p&gt;a = 0b1010 -&amp;gt; Binary literals&lt;br&gt;
b = 100 -&amp;gt; Decimal literals&lt;br&gt;
c = 0o1010 -&amp;gt; Octal literals&lt;br&gt;
d = 0x1010 -&amp;gt; Hexadecimal literals&lt;br&gt;
float_1 = 10.5&lt;br&gt;
float_2 = 1.5e2 (1.5 * 10 to the power 2)&lt;br&gt;
float_3 = 1.5e-3 (1.5 * 10 to the power -3)&lt;/p&gt;

&lt;h1&gt;
  
  
  String Literals
&lt;/h1&gt;

&lt;p&gt;string = 'I am Heba'&lt;br&gt;
strings = "I am Heba"&lt;/p&gt;

&lt;p&gt;multiline = """This is a multiline string. """&lt;/p&gt;

&lt;h1&gt;
  
  
  Boolean Literals
&lt;/h1&gt;

&lt;p&gt;a = True + 4&lt;br&gt;
o/p = 5&lt;/p&gt;

&lt;p&gt;b = False + 10&lt;br&gt;
o/p = 10&lt;/p&gt;

&lt;h1&gt;
  
  
  Special Literals
&lt;/h1&gt;

&lt;p&gt;a = None&lt;br&gt;
This is useful when we want to declare a variable that doesn't have to be assigned a value at the moment.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Taking user input in Python and Type Conversion</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Tue, 22 Aug 2023 17:09:31 +0000</pubDate>
      <link>https://dev.to/hebashakeel/taking-user-input-in-python-and-type-conversion-2j82</link>
      <guid>https://dev.to/hebashakeel/taking-user-input-in-python-and-type-conversion-2j82</guid>
      <description>&lt;p&gt;-- input(prompt = "Enter your name: ")&lt;br&gt;
or&lt;br&gt;
-- input("Enter your name: ")&lt;/p&gt;

&lt;p&gt;Whenever we take user input using the input function, then the user input is always returned in string format. This is because string is a universal format. It can hold other data types. The vice-versa is not true.&lt;/p&gt;

&lt;p&gt;To check the datatype of a variable, we use the type() function as follows:&lt;/p&gt;

&lt;p&gt;-- type([1,2,3,4])&lt;br&gt;
output : list&lt;/p&gt;

&lt;p&gt;To convert the datatype of a variable, we perform Type-Conversion .&lt;/p&gt;

&lt;h1&gt;
  
  
  Types of Type-Conversion:
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Implicit: Python automatically performs type conversion behind the scenes.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Explicit:&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Eg: int(4.5)&lt;br&gt;
o/p : 4&lt;/p&gt;

&lt;p&gt;Eg: float(4)&lt;br&gt;
o/p : 4.0&lt;/p&gt;

&lt;p&gt;Eg: str(4)&lt;br&gt;
o/p : '4'&lt;/p&gt;

&lt;p&gt;Eg: bool(4)&lt;br&gt;
o/p : True&lt;/p&gt;

&lt;p&gt;Eg: list('Hello')&lt;br&gt;
o/p : ['H','e','l','l','o']&lt;/p&gt;

&lt;p&gt;Type conversion is not a permanent operation.&lt;/p&gt;

&lt;h1&gt;
  
  
  Program to add two numbers:
&lt;/h1&gt;

&lt;p&gt;first_num = int(input("Enter 1st number: "))&lt;br&gt;
second_num = int(input("Enter 2nd number: "))&lt;/p&gt;

&lt;p&gt;result = first_num + second_num&lt;br&gt;
print(result)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Keywords and Identifiers in Python</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Tue, 22 Aug 2023 15:04:59 +0000</pubDate>
      <link>https://dev.to/hebashakeel/keywords-and-identifiers-in-python-1n93</link>
      <guid>https://dev.to/hebashakeel/keywords-and-identifiers-in-python-1n93</guid>
      <description>&lt;h2&gt;
  
  
  Keywords
&lt;/h2&gt;

&lt;p&gt;Python is a case sensitive programming language.&lt;/p&gt;

&lt;p&gt;A keyword is a word that is reserved by a program because the word has a special meaning. Keywords can be commands or parameters. Every programming language has a set of keywords that cannot be used a variable name.&lt;/p&gt;

&lt;p&gt;Python has 33 keywords:&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;import keyword&lt;br&gt;
print(keyword.kwlist)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;This prints all the keywords in Python.&lt;/p&gt;

&lt;h2&gt;
  
  
  Identifiers
&lt;/h2&gt;

&lt;p&gt;A Python identifier is a name used to identify a variable, function, class, module or other object.&lt;/p&gt;

&lt;p&gt;Rules for setting identifiers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; can only start with an alphabet or _&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;name = "Heba"&lt;br&gt;
_name = "Heba"&lt;br&gt;
1name = "Heba"  ---Invalid&lt;br&gt;
name1 = "Heba"&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt; Followed by 0 or more letter, _ and digits&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;first_name = "Heba"&lt;br&gt;
first-name = "Heba" ---Invalid&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt; Keywords cannot be used as identifiers&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Variables in Python</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Tue, 22 Aug 2023 14:52:36 +0000</pubDate>
      <link>https://dev.to/hebashakeel/variables-in-python-27d2</link>
      <guid>https://dev.to/hebashakeel/variables-in-python-27d2</guid>
      <description>&lt;h1&gt;
  
  
  Declaring a variable
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;name = "Omair"&lt;br&gt;
print(name)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;To create a variable, there is no need to declare it in Python. It can be created at the time of use. There is also no need to specify the data type of the variable while creating it. This is called Dynamic Typing.&lt;/p&gt;

&lt;p&gt;Static Typing refers to specifying the data type of the variable when declaring them.&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;name = 4&lt;br&gt;
print(name)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;In Python, a variable is not bound to any datatype. This feature is called as Dynamic Binding.&lt;/p&gt;

&lt;h1&gt;
  
  
  Special Syntax
&lt;/h1&gt;

&lt;h1&gt;
  
  
  To declare multiple variables in a single line
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;a = 5; b= 3; c = 5&lt;br&gt;
a, b, c = 2, 3, 4&lt;br&gt;
a = b = c = 6&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

</description>
      <category>python</category>
    </item>
    <item>
      <title>Data Types in Python</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Tue, 22 Aug 2023 14:38:33 +0000</pubDate>
      <link>https://dev.to/hebashakeel/data-types-in-python-1lb8</link>
      <guid>https://dev.to/hebashakeel/data-types-in-python-1lb8</guid>
      <description>&lt;p&gt;Python supports 3 categories of data types:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Basic Types -integer, float, complex, boolean and string&lt;/li&gt;
&lt;li&gt;Container Types - List, tuples, sets and dictionary&lt;/li&gt;
&lt;li&gt;User-defined Types - Classes&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Integer&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print(4)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Floats&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print(4.5)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Boolean&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print(True)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Complex&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print(4+5j)&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Strings&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print('Mumbai')&lt;br&gt;
print("Mumbai")&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;List&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print([1,2,3,4,5])&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Tuple&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print((1,2,3,4,5))&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Sets&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print({1,2,3,4,5})&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Dictionaries&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;print({"Name": "Heba", "Age" : 30, "gender": "Male"})&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

</description>
      <category>python</category>
    </item>
    <item>
      <title>Check if the Kth bit it set!</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Sun, 19 Jun 2022 15:34:31 +0000</pubDate>
      <link>https://dev.to/hebashakeel/check-if-the-kth-bit-it-set-2il3</link>
      <guid>https://dev.to/hebashakeel/check-if-the-kth-bit-it-set-2il3</guid>
      <description>&lt;p&gt;Example 1:&lt;br&gt;
n= 5&lt;br&gt;
k = 1&lt;br&gt;
binary representation of 5 : 101&lt;br&gt;
1st bit from right is set&lt;br&gt;
therefore output = YES&lt;/p&gt;

&lt;p&gt;Example 2:&lt;br&gt;
n = 8&lt;br&gt;
k = 2&lt;br&gt;
binary representation of 8 : 1000&lt;br&gt;
2nd bit from right is not set&lt;br&gt;
therefore output = NO&lt;/p&gt;

&lt;p&gt;Solution using Left Shift operator:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jV92tzXI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q18nhxtbizx91w4ac728.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jV92tzXI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q18nhxtbizx91w4ac728.png" alt="Image description" width="511" height="321"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Solution using Right Shift Operator:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GsCmUamY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n5ntb3dxhc7yyzob9u07.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GsCmUamY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n5ntb3dxhc7yyzob9u07.png" alt="Image description" width="511" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>codenewbie</category>
      <category>programming</category>
    </item>
    <item>
      <title>Finding Divisors of a Number</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Sat, 18 Jun 2022 17:10:02 +0000</pubDate>
      <link>https://dev.to/hebashakeel/finding-divisors-of-a-number-coe</link>
      <guid>https://dev.to/hebashakeel/finding-divisors-of-a-number-coe</guid>
      <description>&lt;p&gt;Ok so now your interviewer asks you to write a program to find all the divisors of a number. What would be your solution.&lt;br&gt;
Example:&lt;br&gt;
if NUM = 6&lt;br&gt;
Divisors of 6 are 1 2 3 6.&lt;/p&gt;

&lt;p&gt;NAIVE SOLUTION:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xqgxI4V2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e6lkcji0zquo6b3y636j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xqgxI4V2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e6lkcji0zquo6b3y636j.png" alt="Image description" width="350" height="322"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Time Complexity : Θ(n)&lt;br&gt;
Space Complexity: O(1)&lt;/p&gt;

&lt;p&gt;EFFICIENT SOLUTION:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--nKISdEeJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aacuci6jgy48rojqm064.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nKISdEeJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aacuci6jgy48rojqm064.png" alt="Image description" width="423" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Time Complexity : Θ(√n)&lt;br&gt;
This solution does not print the divisors in sorted order.&lt;/p&gt;

&lt;p&gt;To print in sorted order:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---O0-Hroc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ze8evwd4zmpuf14evqss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---O0-Hroc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ze8evwd4zmpuf14evqss.png" alt="Image description" width="396" height="354"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Time Complexity : Θ(√n)&lt;br&gt;
Space Complexity : O(1)&lt;/p&gt;

&lt;p&gt;Do you have a better solution in mind?&lt;br&gt;
Do share in the comments!&lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>codenewbie</category>
      <category>programming</category>
    </item>
    <item>
      <title>Computing power</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Fri, 17 Jun 2022 18:33:44 +0000</pubDate>
      <link>https://dev.to/hebashakeel/computing-power-53fm</link>
      <guid>https://dev.to/hebashakeel/computing-power-53fm</guid>
      <description>&lt;p&gt;Ok so your interviewer asks you write a function to find the power of a number. We have all used Math.pow() in JAVA, pow() function in C/C++, but have you wondered how to compute the power without using these????&lt;/p&gt;

&lt;p&gt;Let's find out.&lt;/p&gt;

&lt;p&gt;Example: &lt;br&gt;
x = 2&lt;br&gt;
y = 3&lt;br&gt;
Output = 8 ( 2 to the power 3 = 2 *2 *2)&lt;/p&gt;

&lt;p&gt;Naive Solution: Time Complexity = O(n)&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qnS3PSXF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v41ua28ztrz5et1oufpb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qnS3PSXF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v41ua28ztrz5et1oufpb.png" alt="Image description" width="566" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Output:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CdBYa0Wa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jx9eo04v9um8oerjisbo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CdBYa0Wa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jx9eo04v9um8oerjisbo.png" alt="Image description" width="510" height="181"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Recursive Solution: &lt;br&gt;
Time Complexity = θ(logn)&lt;br&gt;
Space Complexity = θ(logn)&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--p8bwFB12--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z6ilhzi24p9civ08dttj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--p8bwFB12--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z6ilhzi24p9civ08dttj.png" alt="Image description" width="601" height="543"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Output:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uaIt_pyF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ac5plordw2wfkmitu71d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uaIt_pyF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ac5plordw2wfkmitu71d.png" alt="Image description" width="600" height="170"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It has recursive function calls which will take space in function call stack. It also has overhead for function call in return. &lt;/p&gt;

&lt;p&gt;Can you think of a better solution?&lt;br&gt;
How about an Iterative solution?&lt;br&gt;
Do share your views in the comments.&lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>codenewbie</category>
      <category>programming</category>
    </item>
    <item>
      <title>Best Code to check if number is Prime</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Thu, 16 Jun 2022 03:44:52 +0000</pubDate>
      <link>https://dev.to/hebashakeel/best-code-to-check-if-number-is-prime-55nb</link>
      <guid>https://dev.to/hebashakeel/best-code-to-check-if-number-is-prime-55nb</guid>
      <description>&lt;p&gt;C Program&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2fa5f5v8oye793m6ir4e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2fa5f5v8oye793m6ir4e.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can try the code using the following link:&lt;br&gt;
&lt;a href="https://onlinegdb.com/BOQ5GL06Z" rel="noopener noreferrer"&gt;Code&lt;/a&gt;&lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>codenewbie</category>
      <category>programming</category>
    </item>
    <item>
      <title>1NF and 2NF</title>
      <dc:creator>hebaShakeel</dc:creator>
      <pubDate>Mon, 14 Jun 2021 18:17:24 +0000</pubDate>
      <link>https://dev.to/hebashakeel/1nf-and-2nf-2dbj</link>
      <guid>https://dev.to/hebashakeel/1nf-and-2nf-2dbj</guid>
      <description>&lt;p&gt;&lt;strong&gt;Normalization&lt;/strong&gt;: It is a way to reduce/minimize data redundancy (repetition of data). It can be achieved by splitting the table into many tables.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;First Normal Form (1NF)&lt;/strong&gt;:&lt;br&gt;
-&amp;gt; It is the property of converting ER Diagram into the Relational Database.&lt;br&gt;
-&amp;gt; The Relational Database is implicitly in 1NF.&lt;br&gt;
-&amp;gt; All attributes should be atomic [ only one value in a tuple is allowed].&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxriheeqs7h5usyss8c0i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxriheeqs7h5usyss8c0i.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Here, SMobile has multiple values which are not allowed. They have to be taken individually.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Approach-1&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0eun6yu9pt54uu5aibg2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0eun6yu9pt54uu5aibg2.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
This approach creates a lot of redundancy in the table. Therefore it is not a suitable approach.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Approach-2&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdkmeqihmwlef8n1ktpq7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdkmeqihmwlef8n1ktpq7.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
This approach also has redundancy but less when compared to the previous Approach. This is because the tables have now been split into two.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prime Attributes(Key):&lt;/strong&gt;&lt;br&gt;
Those attributes which participate in the Candidate key.&lt;br&gt;
&lt;strong&gt;Example 1&lt;/strong&gt;&lt;br&gt;
R(ABCD), CKs: {A, BD}&lt;br&gt;
Therefore PA = {A,B,D}&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example 2&lt;/strong&gt;&lt;br&gt;
R(ABCDEFG), CKs: {AB, BC, CD, F}&lt;br&gt;
Therefore PA = {A,B,C,D,F}&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Non-Prime Attributes(Non-Key):&lt;/strong&gt;&lt;br&gt;
Those attributes which do not participate in Candidate Key.&lt;br&gt;
&lt;strong&gt;Example 1&lt;/strong&gt;&lt;br&gt;
R(ABCD), CKs: {A, BD}&lt;br&gt;
Therefore NPA = {C}&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example 2&lt;/strong&gt;&lt;br&gt;
R(ABCDEFG), CKs: {AB, BC, CD, F}&lt;br&gt;
Therefore NPA = {E,G}&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Partial Dependency:&lt;/strong&gt;&lt;br&gt;
If subset of any Candidate Key derives a non-key attribute.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
R(ABCD) FDs : {AB-&amp;gt;CD, B-&amp;gt;D}&lt;br&gt;
CK =&amp;gt; {AB}&lt;br&gt;
B-&amp;gt;D, B is a subset of AB and it derives non-key, therefore it is a partial dependency.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Second Normal Form (2NF):&lt;/strong&gt;&lt;br&gt;
=&amp;gt; If a relation 'R' is in &lt;strong&gt;1NF&lt;/strong&gt; (and)&lt;br&gt;
=&amp;gt; If every &lt;strong&gt;non-prime attribute&lt;/strong&gt; is fully dependent on any complete CK (or) No &lt;strong&gt;Partial Dependency&lt;/strong&gt; exists.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Allowed in 2NF:&lt;/strong&gt;&lt;br&gt;
=&amp;gt; Non-Prime determines Non-Prime&lt;br&gt;
=&amp;gt; Non-Prime determines Prime&lt;br&gt;
=&amp;gt; Prime determines Prime&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Not-Allowed in 2NF:&lt;/strong&gt;&lt;br&gt;
=&amp;gt; Prime determines Non-Prime&lt;/p&gt;

</description>
      <category>database</category>
      <category>computerscience</category>
    </item>
  </channel>
</rss>
