Tuesday, November 28, 2023

R20-CSE-OOPS through C++-UNIT-4


UNIT-4

welcome to letslearningcse , lets dive into computer science concepts
 
 Title: Unit 4: JNTUK R20 Syllabus-Based Standard Template Library in C++

Overview

One of C++'s most useful features is the Standard Template Library (STL), which offers pre-made templates for a wide range of data structures and algorithms. We'll talk about the STL in C++ programming in Unit 4 of the JNTUK R20 syllabus in this blog article.

Typical Template Collection

The JNTUK R20 syllabus's fourth unit is all about C++ programming's Standard Template Library (STL). With the help of the robust STL feature of C++, programmers may create code that is both optimized and efficient by using pre-defined templates for a variety of data structures and algorithms.

Students study the many STL components in this subject, such as allocators, containers, iterators, and algorithms. They Discover the several kinds of STL containers—vectors, lists, sets, and maps, among others—and how to utilize them for data manipulation and storing.

Data structures called containers are used to store a group of things. Sequence containers, associative containers, and unordered associative containers are among the various kinds of containers that the STL offers. Associative containers sort data according to a key, whereas sequence containers store data in a predetermined order. Data is stored in unsorted associative containers according to a hash function.

Students gain knowledge of the various kinds of sequence containers, including lists, deques, and vectors, as well as how to store and manage data using them. Dynamic arrays with the ability to self-resize are called vectors, whereas deques are queuing systems with two ends that permit items to be added or removed. Lists are linked lists that make it easy to add and remove elements.

Additionally, students study the various forms of associative containers, including sets and maps, and how to store and manage data with them. Maps are collections of key-value pairs, and sets are sorted collections of unique components.

Students also study about iterators, which are utilized to navigate and work with the components of containers. They study the numerous kinds of iterators and discover how to apply them with different containers. These include input, output, forward, and bidirectional iterators.

Pointers to the components of containers are what iterators are. They offer a means of obtaining and change the components of containers without disclosing the implementation below. The use of iterators to navigate between container elements, retrieve their values, and alter them is taught to students.

Students also gain knowledge of the several algorithms offered by the STL, including algorithms for sorting, searching, and manipulation. They study the many kinds of algorithms and learn how to apply them with different containers and iterators. Examples of these are sort, binary_search, and reverse.

Functions that carry out actions on containers and their constituent parts are called algorithms. Numerous algorithms, such as those for sorting, searching, and manipulation, are available in the STL. Students gain knowledge of how to sort, search, and work with the components of containers using these techniques.

Finally, allocators—which are used to manage memory—are taught to the pupils container allocation and deallocation. They study the many kinds of allocators and discover how to apply them with different containers. Examples of these are default and custom allocators.

The objects that control memory allocation and deallocation for containers are called allocators. Most containers use the default allocator provided by the STL. In order to manage memory in a particular fashion, for as by using a memory pool or a custom memory manager, students are taught how to design custom allocators.

Conclusion


The JNTUK R20 syllabus's fourth unit offers a thorough introduction to C++ programming's Standard Template Library (STL). Through the study of the many STL components, including containers, iterators, algorithms, and allocators, students acquire the abilities and information required to create effective and utilized pre-defined templates to optimize the code.

A strong element of C++ is the STL, which lets programmers create intricate and sophisticated software. Students who successfully complete this class will be able to leverage the pre-defined templates provided by the STL to produce streamlined, optimized code—a critical skill for anyone hoping to succeed in the software development industry.

Additionally, the STL offers a method for creating generic code that may be used to various platforms and applications. Developers can save time and effort when creating sophisticated data structures and algorithms from scratch by utilizing the pre-defined templates provided by the STL.

To sum up, the JNTUK R20 syllabus's fourth unit is a crucial component of the C++ programming curriculum. It gives pupils the information and abilities they need to properly and effectively use the STL. Students who successfully complete this course will be able to write optimized and efficient code, which is a prerequisite for a successful career in software development.

Link to the Material: UNIT-4
 

Wednesday, November 15, 2023

UNIT-3-ml



Welcome to the letslearningcse blog! today In this post, I came up with some cool and interesting stuff in machine learning that is none other than ensemble learning. According to the JNTU syllabus, ensemble learning is unit 3 of machine learning. 
 
We'll start with a brief introduction to classification and its types.
Classification is nothing but a supervised learning technique that enhances categorical data for its target variable. This kind of target output is called classification.
There are two types of classifications:
  • Binary Classification
  • Multi-class Classification

Binary Classification: If a target variable contains categorical data with exactly 2 categories, this is known as binary classification.

Multi-class Classification: If a target variable contains categorical data with more than two categories, this is known as multi-class classification. Here we have multiple class labels present in the given dataset. It has two types of mechanisms:

  • One vs. All [OVA] or One vs. Rest [OVR]: n-class instances or class labels generate n-binary classifier models. formula: n classes=n classifiers
  • One vs. One: n-class instances or labels generate n (n-1)/2 binary classifier models.                    formula:n classes = n(n-1)/2 classifiers

MNIST [Modified National Institute of Standard Technology] Dataset:

  • It is a set of 70,000 small images of (0–9) digits handwritten by students and employees of the US Census Bureau.
  • This is considered a hello-world program in deep learning, which is a subset of machine learning.
  • MNIST is a dataset of handwritten digits, consisting of 70,000 images of size 28x28 pixels.
  • The dataset is divided into two sets: 60,000 images for training and 10,000 images for testing purposes.
  • The sklearn.dataset package contains three major functions for datasets.
  • load: function loads small toy datasets [.csv files] connected to sklearn
  • fetch: A function such as fetch_openml() can be used to load real-world datasets.
  • make: This function generates the fake datasets useful for testing.
Let's get into a brief introduction to ensemble learning. It is nothing but the addition of numerous machine learning modals to provide an efficient method.
It has mainly two types of ensembles:

  • Homogeneous ensemble
In this ensemble, it uses the same algorithm for various models.
  • Heterogeneous ensemble:
In this type of ensemble technique, different algorithms are used. 
 
Sequential ensemble means the model depends on other models output weighted datasets [error-contained data partitions] and does the processing until the maximum is reached or the output is error-free.
Parallel ensemble means a model independent of other models, and each model predicts the output independently.
 
Ensemble techniques were classified into two types:
 
Traditional Techniques:
    • Mean: We all know that the basic principle of mean is the ratio of the sum of observations by the number of observations.
    • Mode: the item that has the majority of repeats is the mode. 
    • Weighted Mean: It is nothing but the mean having some weights for their individuals.
Advanced Techniques:
  • Boosting: Boosting is a type of ensemble learning that combines the weak learners and forms a strong learner to perform the predictions on new data.
  • Bagging: Bagging is a combination of two words [bootstrap and aggregate]. Bootstrap means randomly creating samples of data out of a dataset with replacement, and Aggregation subsets of bootstrap data are given as training data to predict the aggregate output to new data when sampling is preferred. Replacement is called bagging, and without replacement, it is called posting.
  • Random Forest:This algorithm builds multiple decision trees and merges them together to get more accurate and stable predictions. Then it gets predictions from each tree, and by means of majority voting, it selects the decision that gets the majority vote.
  • Voting Classifier: A very simple way to create a better classifier is to aggregate the predictions of each classifier and predict the class that gets the most votes.
  • Stacking [blending] was introduced by Walpert. It is also known as a stacked generalization, and it is an extended form of the model averaging ensemble technique in which all submodels equally participate as per the performance weights and build a new model with better predictions.
What are you going to see in the material?
  • Classification and its types
  • Performance measures
  • MNIST dataset and different types of dataset
  • about ensemble learning
  • ensemble classification
  • traditional ensemble learning
  • advanced ensemble learning
    • boosting
    • bagging
    • random forest
    • voting classifier
    • stacking 
link for the material: UNIT-3-ML

 

Thursday, November 2, 2023

UNIT - 2 [PYTHON]

  UNIT-2 

We are committed to providing thorough Python resources that are especially suited to the JNTUK University R2O program. We will explore control statements in this blog post, going over topics like text output, loop formatting, and definite iteration. We will also look at conditional iteration with the while loop and selection statements, such as if and if-else statements.
Any computer language must include strings and text files, and Python is no different. We will go over data encryption methods and how to access characters and substrings within strings. In addition, we will discuss string and number systems and offer important insights into how they work. Finally, we will investigate the wide variety of string operations that Python offers and look at the nuances involved with handling text files.
Our goal at LetsLearningCse is to make learning Python entertaining and educational. We take great care in selecting our materials so that they correspond with the JNTUK University R2O syllabus and give students a thorough comprehension of the material. As we continue to assist you in your educational path, stay tuned for more interesting articles about Python.empowering students, one Python idea at a time using LetsLearningCse.

What are we going to gain from this material?

  • Control statements: control statements are the program statements that allow the computer to select a part of the code or repeat an action to specify it. They are categorized into selection statements, iterative statements, looping statements, and jump statements.
  • iterative statements: this was classified into mainly 2 categories.There are definite iterations and indefinite iterations.
  • Definite Iteration: for a loop, it is a definite iteration; it iterates until the sequence exists.
  •  conditional iteration: the A loop that requires a condition to be tested within the loop to determine whether the loop should continue is called the loop's continuation condition. If the continuation condition is false, the loop ends. If the continuation condition is true, the statements within the loop are executed again.
  • While loop: it is a conditional iteration statement and is frequently used to execute a block of statements repeatedly until some condition remains true. 
  • Formatting text for output: the total number of data characters and additional spaces for a given data in a formatted string is called its field width. The formatting output, rather than simply printing space-separated values, can be done in three ways: Formatting output using the string modulo operator (%) formatting output using the format method f-literal in Python
  • strings: a string is a sequence of characters enclosed in single or double quotation marks. It is a data structure. A data structure is a compound unit that consists of several smaller pieces of data. The string is an immutable data structure.
  • Data Encryption: Data encryption is used to protect information transmitted on networks. Data encryption is a security method where information is encoded and can only be accessed or decrypted by a user with the correct encryption key
  •  Number Systems: When you perform arithmetic operations, you use the decimal number system. A binary number system is used to represent all information on a digital computer.
  • Text files: all files must be opened first before they can be read from or written to using Python's built-in open() function. write(): This method is used to write the contents of a string to the file. read(): This method is used to read the contents of a file. remove(): to delete a file
 Link to the material:    UNIT-2
 

UNIT -1 [PYTHON]

 UNIT-1 

Greetings from LetsLearningCse.blogspot.com. This blog article will help you learn more about Python.

Note: This material is provided based on the JNTUK R20 syllabus.

Let's dive into the content you are all going to see in this material. In this, you can see what Python is and what a program development cycle is, and along with that, you are going to see what the datatypes, structures, precendence, etc.

Python is a high-level language that is flexible enough to deal with vast areas of work such as data science, machine learning, robotics, and AI assistant creation.

Why do most people prefer the Python language?

People prefer the Python language mostly for several reasons:

  • simple and easy to learn.
  • flexibility
  • free and open source
  • vast standard libraries
  • scalability
  • less SLOC [source lines of code]
  • dynamically typed and interpreted language
  • efficient data visualization after R-language
  • Object-oriented programming and integrated
  • GUI support
  • cross-platform language/portability

Python was invented by Guido Van Rossum in 1991. In fact, so many people don't know why Python is named Python. There is a fact: when Guido van Rossum reads a famous BBC comic about Monty Python flying circus, he wanted to choose a name a little bit mysterious, so he chose Python as the name of his invention.

You can download Python from the www.python.org site. There are a vast number of platforms for Python, such as Idle 3.12, Notepad, Notepad++, Spyder, Jupyter Notebook, Pycharm, Sublime Editor, Anaconda, Visual Studio, etc.

Why should we learn Python? Python can help in various fields such as web development, machine learning, data analysis, scripting, game development, embedded applications for IOT, data science, deep learning, and natural language processing.

What do you gain from this material about Python?

  • Input: how we provide the input in Python, such as static input and dynamic input.
  • Processing: how is the input data processed in Python, and what are the stages involved in the processing of Python code?
  • Output: how the output is displayed in the shell of a Python script
  • Output with the print Function: The print function is an output function that returns the output data in the Python shell.
  • Comments: Comments are necessary to learn how to provide a description of how the code works. In Python, we have single-line comments and multiline comments, also known as documentation.
  • Variables: These are the containers that store data using a specific name. Here you'll see what the rules are for declaring a perfect variable and how we can manipulate a variable.
  • Reading input from the keyboard: input() is a function to read the input from the user side into the program.
  • Performing Calculations: How You Can Do Calculations Using Python will be seen.
  • operators: what are the operators to perform the various calculations using Python, such as arithemetic, logical, and shift operations?
  • conditional statements: they are used in decision-making using Python and are completed based on boolean values.
  • if condition: if the given condition is true, then only code in its block is executed.
  • if-else condition: the given condition is true. if block is executed; otherwise, block is executed.
  • Repetition structures: in this, it shows how code can be repeated multiple times.
  • While loop: until the condition is false, the loop is executed.
  • for loop: until the sequence exists, statements are executed.

 link to the material: UNIT-1

 

Monday, August 21, 2023

R20-2-1-OOPS through C++

R20-2-1-OOPS through C++ UNIT -WISE MATERIALS:-

UNIT-1              UNIT-2       UNIT-3

R20-2-1-OOPS through C++  LAB MANUAL:-

Lab Manual

 Welcome to the letslearningcse , in this blog post you are going to learn c++ based on JNTUK R20 syllabus

Title: Unit-specific C++ Resources Prepared Using the JNTUK R20 Syllabus

Overview : The programming language C++ is strong and adaptable, and it's widely used in software development. Adhering to a thorough and well-organized curriculum is crucial for guaranteeing a strong comprehension of the language. We will talk about the first three units of the C++ unit-wise resources in this blog post. These materials are based on the JNTUK R20 syllabus and offer a comprehensive and well-rounded learning experience.

 Unit 1: Overview of C++ : Students are introduced to the fundamentals of C++ programming in the first unit of the syllabus. Data types, variables, operators, and control statements are among the subjects discussed. The structure and syntax of C++ programs are taught to students, with a focus on the significance of good coding practices. With practical tasks, students get hands-on experience building basic C++ programs, which lays the groundwork for more complex subjects in later units. Students learn about the basic ideas of C++ programming in this lesson, including data types, variables, and operators. They gain knowledge of how to employ control statements like if-else and switch-case, declare and initialize variables, and carry out arithmetic and logical operations. Students will be able to write basic programs and have a firm grasp of the fundamentals of C++ programming by the end of this lesson.

Unit 2: Loops and Control Statements Control statements and loops, which are essential elements of any programming language, are covered in detail in the second unit. Students investigate the complexities of using if-else statements to make decisions, loops like for and while to iterate, and the manipulation of lists and other data structures. Comprehending these ideas is essential for crafting effective and rational code, empowering learners to approach challenging issues methodically. Students study the many kinds of C++ loops and control statements in this unit. They look at iteration statements like for, while, and do-while as well as decision-making statements like if-else and switch-case. Along with learning how to work with data structures like arrays and lists, students also learn how to use the break and continue statements in loops. Students will be able to use control statements and loops to construct sophisticated programs by the conclusion of this lesson. 

Unit 3: Object-Oriented Programming and Functions The third course explores the concept of object-oriented programming, or OOP, which is utilized extensively in contemporary software development. Pupils gain knowledge about the role functions play in improving reusability and modularizing programming. They also explore OOP concepts like polymorphism, inheritance, classes, and objects, which help create scalable and reliable programs. Students study the use of functions in C++ programming in this subject. They study the many kinds of functions, including user-defined and built-in functions, and they discover how to provide parameters to functions and get values back. The fundamentals of object-oriented programming, including classes, objects, inheritance, and polymorphism, are also taught to students. By the end of this course, students will understand how to use functions and the concepts of object-oriented programming to write modular, reusable code. 

In summary The JNTUK R20 syllabus served as the basis for the preparation of the first three units of the unit-wise C++ resources an organized method for picking up the fundamentals of this potent programming language. As they work through these lessons, students will gain an understanding of the fundamentals of C++ programming as well as the problem-solving abilities necessary for a successful software development career.

 The JNTUK R20 syllabus offers a thorough and well-rounded education, encompassing every facet of C++ programming, from fundamentals to more complex subjects. Students can be confident that by adhering to this syllabus, they will acquire a strong grasp of the language and be well-equipped to start a lucrative career in software development.

Tuesday, August 1, 2023

R20-AI&ML3-1 ----------Machine Learning [ML] Notes

 material links of unit 1&2&3:

UNIT-1      UNIT- 2&3

Lab manual link:

Machine Learning-LAB-R20-3-1

LetsLearningCse.blogspot.com welcomes you to the world of knowledge on technology. In this blog post, you are going to experience a new kind of knowledge regarding artificial intelligence and machine learning. Without delay, let's get into the topic.

Well, let's start with a brief introduction to artificial intelligence and machine learning.

Artificial intelligence is a branch of computer science in which we can create intelligent machines that can behave like humans, think like humans, and make decisions. Actually In 1951, the first AI program was introduced by Christopher, and AI was introduced by John McCarthy in 1955.




 

Machine learning is the field of study that gives computers the ability to learn without being explicitly programmed.It was introduced by Arthur Samuel in 1959. It enhances systems to learn from data, improve performance from experience, and predict new data without human interference. Machine learning is a subset of AI.

Deep learning is a collection of statistical techniques for machine learning feature hierarchies that are actually based on artificial neural networks. I was introduced by Dina Dechter in 1986. It is subset of Machine learning

Before going into our main concept of machine learning, see various areas that use machine learning; they are image recognition, virtual personal assistants, automatic translation, traffic prediction, web search and recommendation engines, online fraud detection, medical diagnosis, text and speech recognition, email spam filtering, etc.

Tip: If you know this 7-step process in machine learning, it's clear that you can build any project in machine learning in an efficient manner.

  • Define the problem. [Understand the problem first.]
  • Data Gathering
  • Data preprocessing [noisy data removal, data splitting]
  • Choose model
  • Train the model.
  • Test the model.
  • Deployment or prediction

Types of machine learning:

  • Whether or not they are trained under human supervision (SUPERVISED, UNSUPERVISED, SEMI-SUPERVISED, and REINFORCEMENT LEARNING).
  • Whether or not they can learn incrementally on the fly (Online Learning vs Batch Learning)
  • Whether they work by simply comparing new data points to known data points or instead detect patterns in the training data and build a predictive model [instance-based learning versus model-based learning]

Most of the time, we discuss the human supervision type of machine learning.

  • Supervised learning
  • Unsupervised learning
  • semi-supervised learning
  • Reinforcement learning

Supervised learning: we train the machines using the labeled dataset, and based on the training, the machine predicts the output. In this, we feed training data to an algorithm that includes the desired solutions in it. It has two methods to solve problems, which are:

  • Classification: it was used when output data is categorical data.
  • Regression: it was used for predicting or estimating a continuous or quantitative output value.

e.g., image recognition, spam detection

Unsupervised learning: In this model, the model, the models are trained using an unlabeled dataset and predict new data without any supervision, so we say it is unsupervised. It was easier as compared to a labeled dataset. It has two methods:

  • Clustering: method of grouping data items that are similar into a single cluster
  • Association: It is used for finding the relationships between variables in large data sets.

Semi-supervised learning lies in between supervised and unsupervised learning. To overcome the drawbacks of both, it came into existence. Its training data is a combination of both labeled and unlabeled data. It has both the features of supervised and unsupervised learning.

Reinforcement learning: we simply say it as feed-back learning. It follows the trail-and-error method to get the desired solution.

Loss Functions:

Loss is a number indicating how bad the model's prediction was on the sample

Training loss: it is the error of the model on the training set.

Testing loss: it is the error of the model on the testing set.

A loss function measures the error between the predicted and actual values in a machine learning model.

There are different loss functions, such as

  • Mean Squared Error (MSE)
  • Cross-entropy loss
  • Mean Absolute Error (MAE)
  • Huber loss
  • Hinge loss
  • Quantile loss

 

 

 
 

Monday, March 27, 2023

JNTUK R20-B.Tech CSE 1-2 Python

UNIT-1           UNIT-2          UNIT-3       UNIT-4               UNIT-5


Lab Manual

Hello students, LetsLearningCse.blogspot.com welcomes you to the world of BTech. In this blog post, you are going to enhance some theoretical and technical knowledge regarding Python.

As we all know, Python is a leading high-level language that can be used for various applications.

Why Python?

  • simple and flexible

  • easy to learn.

  • less number of SLOC [source lines of code]

  • Vast libraries support machine learning, data science, deep learning, etc.

  • efficient and quality productivity

  • fast processing

Who invented Python?

On February 20, 1991, Guido van Rossum released the first version of Python.

Now Python is going up to the 3.12 version, advancing and depricating the packages every year. In this blog post, we are providing complete details regarding Python according to the JNTUK R20 syllabus. Each unit was uploaded as a separate link in this post. 

Well! Apart from that, let's discuss some stuff regarding Python. If you want a well-rounded and in-depth explanation, go through the material links. Now I am going to provide just a brief overview of Python programming.

Python is an interpreter language, which means Python executes statements statement by statement rather than executing all statements at a time.

One more thing: Python is also a dynamically typed language, which means it can understand the type of data entered into a variable.

To learn any programming language, you first need to know how to push the input and deliver the output. In Python, we provide input in two ways: instance and runtime input, and for output, we use the print() function.

for input:

instance way: a=1; b="abc"

runtime: a = input(); b = input())

for output: print (Hello world!")

for comments:

In single-line comments, we use hash (#), e.g., #print.

In multi-line comments, also known as documentation, we use a pair of three double or single quotes. """ print"""

The next step is variable assignment, and its' rules are:

Rules:

  • Variable names can start with an underscore or with an alphabet, either in lower or upper case.

  • A variable should not start with a number or special symbol.

  • A variable name should not contain a space or hyphen.

  • variable name is case-sensitive; for example, a and A were considered as two different variables.

Compared to the C language, datatype specifying is permitted for some variables only, but most of the time it understands the data dynamically.

examples: a = "abc"; b = 12;

a=input() ;b=int(input())

datatype: the type of data that is going to be stored in a variable.

Datatypes in Python are

  • Integer: int

  • Float: float

  • String: str

  • Boolean: bool

  • Complex: complex

  • container datatypes: list, tuple, set, dictionary,frozenset, numpy arrays, etc.

then coming to conditional statements, followed by indentations to differentiate the block of code.

if condition: When a condition is true, statements are executed, and when it is

if (<condition>):

#statements

along with else: when the if condition statement is false, the else block is executed.

if(<condition>):

statements

else:

statements

loops: to repeat the statements, we use loops in Python. We have two types of loops: the for loop and the while loop.

for loop syntax:

for variable_name in sequence:

                                  statements

while loop syntax:

while(<condition>):

statements

functions: it is used for the code reusability. For declaring a function, we use the def keyword.

syntax:

def <function_name>():

                       statements

function_name()

For in-depth explanation, refer to these materials.

unit wise materials: 

UNIT-1           UNIT-2          UNIT-3       UNIT-4               UNIT-5

LAB MANUAL:

Lab Manual

 

Monday, October 31, 2022

R20 B.Tech CSE Skill Lab


 R20 B.Tech CSE   Skill Lab

Letslearningcse.blogspot.com welcomes you to enhance your knowledge regarding frontend development using HTML [hypertext markup language] and CSS [cascading style sheets].

Let's get into the topic without delay. Let's dive into the content.

 HTML stands for HyperText Markup Language. It is used to design web pages using a markup language. HTML is a combination of hypertext and markup language. Hypertext defines the link between web pages. A markup language is used to define the text document within the tag, which defines the structure of web pages. Most markup languages (e.g., HTML) are human-readable. The language uses tags to define what manipulation has to be done on the text.

 

HTML code:

Every HTML document that begins with a start tag is <HTML> and terminates with an ending tag is </HTML>.

HTML documents should be saved with the extension.html or.htm. 

A tag is made up of a left operator (<), a right operator (>), and a tag name between these two operators. 

If you forget to mention the right operator (>) or if you give any space between the left operator and the tag name, the browser will not consider it a tag. 

At the same time, if the browser not understand the tag name, it just ignores it, and it won't generate any errors. 

The HTML language is not case-sensitive; hence, users can write the code in either upper case or lower case. There is no difference between  <HTML> and <html> 

Syntax of a tag: 

<Tag name [parameters=value]>

Html uses predefined tags and attributes to tell the browser how to display content, which means in which format, style, font size, and images to display. Html is a case-insensitive language. 

Case-insensitive means there is no difference in upper case and lower case (capital and small letters) being treated as the same; for example, 'D' and 'd' are both the same here. 

 

There are generally two types of tags in HTML: 

  •  Paired Tags: These tags come in pairs. That is, they have both opening(< >) and closing (</ >) tags.
  •  Empty Tags: These tags do not require being closed.

Tags are individuals of HTML structure; we have to open and close any tag with a forward slash like this: <hi> </hi>. There are some variations with the tag; some of them are self-closing tags, which aren't required to close, and some are empty tags where we can add any attributes. 

 HTML text tags

<p>, <hl>><h2><h3><h4><h5><h6><strong>, <em>,  <abbr>, 

<acronym>, 

<address>, <bdo>, <blockquote>, <cite>, <q>, <code>, <ins>, <del>, <dfn>, <kbd>, 

<pre>, 

<samp>, <var> 

Unclosed HTML tags

Some HTML tags are not closed, for example, br and hr. 

<br> Tag: br stands for break line; it breaks the line of the code. 

<hr> Tag: HR stands for Horizontal Rule. This tag is used to put a line across the webpage. 

HTML Link Tags 

 <a> and <base>

HTML Image and Object Tags 

<img>, <area>, <map>, <param>, and <object> 

HTML List Tags 

<ul>, <ol>, <li>, <dl>, <dt>, and <dd> 

HTML Table Tags 

table, tr, td, th, tbody, thead, tfoot, col, colgroup, and caption 

HTML Form Tags form, input, textarea, select, option, optgroup, button, label, fieldset, and legend 

HTML Scripting Tags  script and no script 

Attributes: Attributes are additional properties of html tags that define the properties of any html tags. i.e., width, height, controls, loops, input, and autoplay. These attributes also help us store information in meta tags by using name, content, and type attributes. 

  • Attributes should always be applied with the start tag. 
  • The attribute should always be applied with its name and value pair. 
  • The attribute name and values are case-sensitive, and it is recommended by W3C that they be written in lowercase only. 
  • You can add multiple attributes to one HTML element, but you need to give space between two attributes. 

Syntax: 

<element attribute name="value">content</element>