LINKED LIST (DELETION FROM BEGINNING,ENDING AND SPECIFIED POSITION) - DATA STRUCTURES
HTML-код
- Опубликовано: 9 фев 2025
- LINKED LIST DELETION OF AN ELEMENT FROM
1. BEGINNING
2. ENDING
3. SPECIFIED POSITION
INTRODUCTION TO LINKED LIST, CREATE AND DISPLAY
• LINKED LIST (CREATION ...
INSERTION OF ELEMENT
• LINKED LIST (INSERTION...
---------------------------------------------------------------------------------------------------------------
DATA STRUCTURES
• INTRODUCTION TO DATA S...
JAVA PROGRAMMING
• CORE JAVA TUTORIAL FOR...
COMPILER DESIGN
• INTRODUCTION TO COMPIL...
AUTOMATA THEORY || THEORY OF COMPUTATION
• INTRODUCTION TO AUTOMA...
R PROGRAMMING
studio.youtube...
HTML TUTORIALS WITH IMPLEMENTATION || LEARN HTML IN 4 HOURS
• HTML TUTORIALS WITH IM...
LEARN CSS IN 3 HOURS || CASCADING STYLE SHEETS FOR BEGINNERS
• LEARN CSS IN 3 HOURS |...
JAVA SCRIPT FOR BEGINNERS IN 7 HOURS || LEARN JAVA SCRIPT IN 7 HOURS || JAVA SCRIPT
• JAVA SCRIPT FOR BEGINN...
XML (eXtensible Markup Language)
• XML (eXtensible Markup...
OPERATING SYSTEM
• OPERATING SYSTEM
ETHICAL HACKING
• Video
VI EDITOR BASICS IN LINUX / UNIX || LEARN VI EDITOR COMMANDS || LINUX || UNIX
• VI EDITOR BASICS IN LI...
HOW TO DOWNLOAD & INSTALL MySQL IN WINDOWS 10
• HOW TO DOWNLOAD & INST...
DATABASE MANAGEMENT SYSTEM
• DATABASE MANAGEMENT SY...
PYTHON PROGRAMS
• PYTHON PROGRAMS
C PROGRAMMING
• 01 - VARIABLES & CONST...
CORE JAVA TUTORIAL FOR BEGINNERS || LEARN CORE JAVA IN 15 HOURS || JAVA TUTORIALS FOR BEGINNERS
• CORE JAVA TUTORIAL FOR...
PYTHON TUTORIALS FOR BEGINNERS (తెలుగు లో)
• Learn Python from Scra...
PYTHON OOPS - MODULES - EXCEPTION HANDLING (తెలుగు లో)
• PYTHON - OOPS CONCEPTS...
PYTHON NUMPY TUTORIAL IN TELUGU (తెలుగు లో) || COMPLETE NUMPY TUTORIALS IN TELUGU
• PYTHON NUMPY TUTORIAL ...
PYTHON PANDAS TUTORIAL IN TELUGU (తెలుగు లో) || COMPLETE PANDAS TUTORIALS IN TELUGU || DATA SCIENCE
• PYTHON PANDAS TUTORIAL...
MATPLOTLIB LIBRARY - PYTHON PROGRAMMING (ENGLISH)
• MATPLOTLIB LIBRARY - P...
PYTHON DATABASE CONNECTIVITY - MYSQL & MS-EXCEL
• PYTHON DATABASE CONNEC...
DATA STRUCTURES USING PYTHON (ENGLISH)
• DATA STRUCTURES USING ...
----------------------------------------------------------------------------------------------
Instagram : / sundeepsaradhikanthety
Sir really u are teaching very well by giving examples and covering entire concepts sir ,very much impressed sir do more videos for us sir.thanks a lot sir.
the best explained concept on youtube❤❤❤❤❤❤
Sir, we are waiting for more videos on data structures, please upload soon
And your teaching level is very Excellent👌
Thankyou thankyou so much sir....i understand whole concept.....ur best teacher....to teach concept and give the students very properly...
I respect u sir
Awesome Explanation Sir, I wasted 4 days to understand this and finally got it here.
Sir your teaching style is so so good👏👏
He is explaining better than my lecture
But try to give notes for the given topics
It helps the viewer very much
Wrote the full program here:#include
#include
int value;
struct node
{
int data;
struct node *next;
}*new,*head,*tail,*temp,*current,*prev,*next;
void create()
{
new=(struct node*)malloc(sizeof(struct node));
printf("Enter the value:
");
scanf("%d",&value);
new->data=value;
new->next=NULL;
}
void insert()
{
create();
if(head==NULL)
{
head=new;
tail=new;
}
else
{
tail->next=new;
tail=new;
}
display();
}
void display()
{
printf("Updated link list is:
");
temp=head;
while(temp!=NULL)
{
printf("%d
",temp->data);
temp=temp->next;
}
}
void insertatbeg()
{
if(head==NULL)
printf("No Linked List found.");
else
{
create();
new->data=value;
new->next=head;
head=new;
display();
}
}
void insertatend()
{
if(head==NULL)
printf("No Linked List found.");
else
{
create();
new->data=value;
tail->next=new;
new->next=NULL;
tail=new;
display();
}
}
void insertatmid()
{
if(head==NULL)
printf("No Linked List found.");
else
{
create();
temp=head;
int pos,i;
printf("Enter the position where new node is to be inserted:
");
scanf("%d",&pos);
for(i=0;inext;
}
new->data=value;
new->next=temp->next;
temp->next=new;
display();
}
}
void deleteatbeg()
{
if(head==NULL)
printf("No Linked List found.");
else
{
temp=head;
head=head->next;
temp->next=NULL;
display();
}
}
void deleteatend()
{
if(head==NULL)
printf("No Linked List found.");
else
temp=head;
while(temp->next!=tail)
{
temp=temp->next;
}
temp->next=NULL;
tail=temp;
display();
}
void deleteatmid()
{
if(head==NULL)
printf("No Linked List found.");
else
{
temp=head;
int pos=0,i;
printf("Enter the position which you want to delete.
");
scanf("%d",&pos);
for(i=0;inext;
}
temp->next=temp->next->next;
display();
}
}
void count()
{ if(head==NULL)
printf("No Linked List found.");
else
{
int count=0;
temp=head;
while(temp!=NULL)
{
count++;
temp=temp->next;
}
printf("
Total number of nodes is : %d
",count);
}
}
void reverse()
{
if(head==NULL)
printf("No Linked List found.");
else
{
current=head;
while(current!=NULL)
{
next=current->next;
current->next=prev;
prev=current;
current=next;
}
}
head=prev;
display();
}
int main()
{
printf("Press:
1.Insert a new value.
2.Display all elements.
3.Insert at beginning.
4.Insert at End.
5.Insert in middle.
6.Delete at beginning.
7.Delete at End.
8.Delete in between.
9.Count total number of nodes.
10.Reverse
0.Exit");
int choice;
do
{
printf("
Enter your choice:
");
scanf("%d",&choice);
switch(choice)
{
case 1:
insert();
break;
case 2:
display();
break;
case 3:
insertatbeg();
break;
case 4:
insertatend();
break;
case 5:
insertatmid();
break;
case 6:
deleteatbeg();
break;
case 7:
deleteatend();
break;
case 8:
deleteatmid();
break;
case 9:
count();
break;
case 10:
reverse();
break;
case 0:
printf("Exited successfully");
break;
}
}while(choice!=0);
}
Thanks bro. Appreciate it!!!!
thanks bhai ….. sabse payara kaam toh tune kar diyaa … cheers
showing error after at *new
code is available at google
@@bhanuprasadbaddam146 new is key word so change it like newn or news it will not show error
Very nice, thanks for u effort of teaching the concept very simple and easy understanding
ONE OF THE BEST DSA PLAYLIST EVER ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
Fascinating!!, The easy way to understand the data structure
Sir thank you much sir actually I saw lots of video but this is a great once I understand
Sir thanks for giving lot of information.your videos are very useful for us.we are expecting more videos from you sir.
baaga kastapaduthu chepparu, chala thanks
Sir in the for loop condition you gave statement inside (i
Exactly searching for this comment
it should be (i
i
For I=0 itself the address part contains the address of next node so the temp will start pointing to the next node that is why I
Yes, i
Sir,
in for loop we will have( i < pos ) or ( I
as the node content address of next element
After disconnect the node , we should delete the temp bcoz it occupying some memory location so wasted memory space so that we have to delete temp like , free(temp);
Exactly only disconnecting won't help
instead directly delete it thus it will get disconnected automatically
Session was Wonderful sir
we can also use just the head variable instead of using both head and tail . only change will come when we are inserting at end ,here we can use tail->next=new ,but for just head variable case ,we will have to traverse till last node
Great teaching mastaaru
Thank you soo mch sir...
For such a fruitful vdo
you are a genius
thanks sir for step by step proper explanation.
its very useful sir
can u please put the entire codes as well... so as to better understand .by pasting the same in compilers ........u teach great
Thank u for explaining..keep going on sir
Sir u are amazing thank u for making videos 🙏🙏❤
thank you
Please reply @Sundeep Saradhi Kanthety.. condition of for loop is correct or not??
awesome! explanation
Nice sir
At specific position, I think there should be braces for for loop until it reaches the specific position then further command will execute, kindly recheck it
he is just explaning the things by assuming that you know the basic of programming u should know how to design it
Nice..
Thank you sir
Super ❤❤❤
Sir can you upload full program for inserting,deleting and display
Yes sir... Plzz post... Full program... In this way.....
Tnq you so much sir
thanks sir
Sir I think we not only break the connection.... But we have to free the memory too
Sir 10 address field has an arrow but other address field no arrow this is correct or not
But here in the deletion from specific node the node to be deleted is not free up from the memory which is not good from programming point of view , how to free the memory along with the node
Just update the next and write the free( ) function to release the memory
@@sundeepsaradhi will it work because the link to the node to be deleted has been broken, that node is permanently lost.
in my college they said to use free function on that temp node to delete the memory after the head variable is shifted to next node instead of making it address field null(here i am saying delete at beginnng case ,but we use free(temp); in every delete node function.
sir after disconnecting the node arent we supposed to disconnect the deleted node plz reply sir
Sir,how to delete the last node by using the tail pointer..
At 13:49 can I write tail=temp; above temp->next=null; will I still get the output
Yes you can write it.
Sir in the for loop Condition if position value changes its not working, Can you explain how ?
sir, the node which u have deleted is not deleted permanently but still it is pointing towards 4000 address location. and if i goes wrong let me know....sir
Yes
You are correct and if you need to remove permenantly you have to use free() function to free up the allocated memory
@@sundeepsaradhi could you please tell me how to free up that location with free function.....sir
In the for loop should the second statement..... should be out of the loop?
Sir tell the class with perfect coding like programming example
sir link between 30 and 40 is still present by this 2 lists are present please clarify me
Sir if we delete 30(pos 2) than 30 of next should be null or not ?
" temp->next->next=NULL "
best
Sir u r videos r easy to understand 💯👌..but it can be wrote or not on jntua exams plzz give me feedback sir....🙏🙏🙏
at beginning : temp=head
head=temp->next
i think this is correct
Both are valid since intially head and temp both are pointing at same node
Hi sir,
Can you tell me plz
Delete a node at specific position is same as delete a node anywhere.Plz.Reply me soon..
❤❤❤❤❤
sir you are inserting at 3rd pos so shouln't pos be equal to 3 instead of 2 ...
miru cheppaka doubts untaya sir
Sir data structures full video share chayara plz
Sir pls gives us full example program ..
Sir can you write program for this topic
Can we use keyword "continue" to delete specific node?
how can we say 1st element as head and last element as tail? is it predefined or how to assign it?
Hi
We are initializing both head and tail at first node and after insertion of every node we are updating tail position. Hope your doubt has been clarified. Thank you for your support towards our channel
Sir please writer a program for insertion and deletion of elements using linked list in c++,seperately
What is use of " temp=temp->next"
To move the temp to next position
can we write temp-->next as next(temp) ?
Why can't we use ?
temp->link=pos->link (in deletion from specific position)
becouse pos is not defined as a pointer in struct node data type
Sir please provide full code from creating, inserting, deleting
Plz give a full proper program
Condition in while should be temp-next!=NULL
PLEASE TELL IF I AM WRONG
i have the same question
No! if we use temp->next!=NULL in while loop then the temp will be pointing at the last location ,so when you delete temp how will you assign tail or we can say how will you assign null to new tail!
i think Condition in while should be temp-next!=NULL
would it be wrong..please answer asap
No! if we use temp->next!=NULL in while loop then the temp will be pointing at the last location ,so when you delete temp how will you assign tail or we can say how will you assign null to new tail!
should we free the memory?
it is same as making it NULL
great sir
hi vikash
Thanks for your support towards our channel.Share our channel with your friends and keep following our channel.
Sir element free cheyaalsina avasaram ledha sir
Hi
Yes we have to free the memory by free( ).
why cant we first place null and then change the head
Sir this topic not understood 😢
Need in cpp
𝘵𝘯𝘲 𝘴𝘪𝘳
Sir i am simply a graduate(BBA) can i get job in a IT company as a programmer or software developer.
I have knowledge of c,c++ and data structure please anyone rply..
Sir every time u tell us to post our doubts in comment section but u never clear them
Hi
Sorry for that pls tell me what is your doubt
@@sundeepsaradhi Sir, for deleting from any position we run the loop from i=0 to inext;
temp->next=new_node;
new_node->next=temp 1;
So my question is why r we making new node equals temp 1 in the last line?
#include
#include
struct node{
int data;
struct node*next;
}*head,*tail;
void creation() {
int n;
printf("Enter the Size= ");
scanf("%d", &n);
int i = 1;
while (i data = value;
newnode->next = NULL;
if (head == NULL) {
head = newnode;
tail = newnode;
} else {
tail->next = newnode;
tail = newnode;
tail->next=head;
}
i++;
}
}
void insertAtfist(){
int value;
printf("Enter the value DO!you insert= ");
scanf("%d",&value);
struct node*newnode;
newnode=(struct node*)malloc(sizeof(struct node));
newnode->data=value;
newnode->next=head;
tail->next=newnode;
head=newnode;
}
void insertAtlast(){
int value;
printf("Enter the value DO!you insert= ");
scanf("%d",&value);
struct node*newnode;
newnode=(struct node*)malloc(sizeof(struct node));
newnode->data=value;
tail->next=newnode;
newnode->next=head;
tail=newnode;
}
void specific(){
int n;
int i=1;
printf("Enter the position= ");
scanf("%d",&n);
struct node*ptr=head;
while(inext;
i++;
}
int value;
printf("Enter the value= ");
scanf("%d",&value);
struct node*newnode;
newnode=(struct node*)malloc(sizeof(struct node));
newnode->data=value;
newnode->next=ptr->next;
ptr->next=newnode;
}
void deleteAtfirst(){
struct node *temp;
temp=head;
head=head->next;
tail->next=head;
free(temp);
}
void delleteAtlast(){
struct node*temp;
temp=head;
while(temp->next!=tail){
temp=temp->next;
}
tail->next=NULL;
temp->next=head;
tail=temp;
}
void travase(){
struct node *temp=head;
while(temp->next!=head){
printf("%d->",temp->data);
temp=temp->next;
}
printf("%d->",temp->data);
}
void deleteSpecficPosition(){
int n;
int i=1;
struct node*temp,*newnode;
temp=head;
printf("Enter the positon = ");
scanf("%d",&n);
while(inext;
i++;
}
temp->next=temp->next->next;
}
int main(){
creation();
//insertAtfist();
//insertAtlast();
// specific();
//travase();
//deleteAtfirst();
// delleteAtlast();
//deleteSpecficPosition();
travase();
} As a newcomer, it's completely normal to encounter numerous errors during your initial attempt (sending love from Bangladesh). Making mistakes is an integral part of the learning process, and it's how we grow and improve. Embrace these challenges as opportunities for growth and don't hesitate to seek help or explore different approaches. Remember, everyone starts somewhere, and with practice, you'll gain confidence and proficiency in no time. Love and support from Bangladesh! 😊