Skip to main content

Featured

Solve LeetCode 3 Longest Substring Without Repeating Characters in C++ using the sliding window

Longest Substring Without Repeating Characters in C++ LeetCode 3 · sliding window · last index array Table of Contents Problem Statement Approach Algorithm C++ Program Input Sample Output Output Explanation Dry Run Flow of Execution Time Complexity Space Complexity Applications Key Points Interview Questions Frequently Asked Questions Conclusion Problem Statement 3. Longest Substring Without Repeating Characters Given a string s , find the length of the longest substring that contains no repeating characters. A substring is a continuous part of the string, so "pwke" is a subsequence of "pwwkew" but not a substring. Approach We use a sliding window . The window is the part of the string between start and end , and we always keep it free of repeated characters. An array lastIndex of size 128 remembers the most recent position of every ASCII ...

write a program Address Book in c

Address Book


-------------------------------------------------------------------------------------------------------------------

#include<stdio.h>

#include<string.h>

struct adressbook

{

    char name[30];

    char mob[15];

    char email[20];

    char adress[30];

};

void add_details(struct adressbook *,int *);

void edit_details(struct adressbook *,int *);

void search_details(struct adressbook *,int *);

void print_details(struct adressbook *,int *);

int main()

{

    struct adressbook user[30];

    int user_count=0,choice;

    int repeat=1;

    while(repeat)

    {


        printf("1. Add Details\n");

        printf("2. Edit Details\n");

        printf("3. search Details\n");

        printf("4. print Details\n");

        printf("Enter the choice:");

        scanf("%d",&choice);

        switch(choice)

        {

            case 1: add_details(user, &user_count);

                    break;

            case 2: edit_details(user, &user_count);

                    break;

            case 3: search_details(user, &user_count);

                    break;

            case 4: print_details(user,&user_count);

                    break;

            default:

                    printf("Invalid choice!!\n");

        }

        char ch;

        printf("Do you want to continue(y/n):");

        scanf(" %c",&ch);

        ch=='y' || ch=='Y'? (repeat=1):(repeat=0);

    }

    return 0;

}

void add_details(struct adressbook user[],int *user_count)

{

     int i=*user_count;

     printf("Enter Name: \n");

     scanf(" %[^\n]",user[i].name);

     printf("Enter Mobile Number: \n");

     scanf(" %[^\n]",user[i].mob);

     printf("Enter Email: \n");

     scanf(" %[^\n]",user[i].email);

     printf("Enter Adress: \n");

     scanf(" %[^\n]",user[i].adress);

     (*user_count)++;

     printf("Details are Added Successfully!!\n");

}

void print_details(struct adressbook user[],int *user_count)

{

    for(int i=0;i<*user_count;i++)

    {

        printf("%s, %s, %s, %s\n",user[i].name,user[i].mob,user[i].email,user[i].adress);

    }

}

void search_details(struct adressbook user[], int *user_count)

{

    char name[30];

    int found = 0;

    printf("Enter the Name of the contact you want to search: \n");

    scanf(" %[^\n]", name);

    for (int i=0;i<*user_count;i++)

    {

        if(strcmp(user[i].name, name)==0)

        {

            found=1;

            printf("%s, %s, %s, %s\n",user[i].name,user[i].mob,user[i].email,user[i].adress);

            break;

        }

    }

    if(found==0)

    {


        printf("Not Found in the list\n");

    }

}

void edit_details(struct adressbook user[], int *user_count)

{

    int choice;

    int i=*user_count;

    char edit[30];

    int found=0,record=0;

    printf("Enter The Name You Want To Edit:\n");

    scanf(" %[^\n]",edit);

    for (int i=0;i<*user_count;i++)

    if(strcmp(user[i].name,edit)==0)

    {

        record=i;

        found=1;

        break;

    }

    if(found==0)

    {


        printf("not found");

        return;

    }


        printf("1. Edit Name\n");

        printf("2. Edit Mobile Number\n");

        printf("3. Edit Email\n");

        printf("4. Edit Details\n");

        printf("Enter the choice:\n");

        scanf(" %d",&choice);

        switch(choice)

        {

        case 1:printf("enter the detail(name)\n");

               scanf("  %[^\n]",user[record].name);

               break;

        case 2:printf("enter the detail(mob)\n");

               scanf("  %[^\n]",user[record].mob);

               break;

        case 3:printf("enter the detail(email)\n");

               scanf("  %[^\n]",user[record].email);

               break;

        case 4:printf("enter the detail(address)\n");

               scanf("  %[^\n]",user[record].adress);

               break;

        default:

                printf("Invalid input!!");

        }


}

----------------------------------------------------------------------------------------------------------------------------

 

Comments

Popular Posts

🌙