Posts

Showing posts from October, 2025

Binary search tree

 program:   #include <stdio.h> #include <stdlib.h> struct node {     int key;     struct node *left, *right; }; struct node *newNode(int item) {     struct node *temp = (struct node *)malloc(sizeof(struct node));     temp->key = item;     temp->left = temp->right = NULL;     return temp; } void inorder(struct node *root) {     if (root != NULL) {         inorder(root->left);         printf("%d -> ", root->key);         inorder(root->right);     } } void preorder(struct node *root) {     if (root != NULL) {         printf("%d -> ", root->key);         preorder(root->left);         preorder(root-...

DFS

  #include <stdio.h> int a[20][20], visited[20], n; void dfs(int v) {     int i;     visited[v] = 1;     printf("Visited %d\n", v);     for (i = 1; i <= n; i++)     {         if (a[v][i] && !visited[i])         {             printf(" %d->%d\n", v, i);             dfs(i);         }     } } int main()  {     int i, j, v;     printf("Enter number of vertices: ");     scanf("%d", &n);     for (i = 1; i <= n; i++)     {         visited[i] = 0;         for (j = 1; j <= n; j++)             a[i][j] = 0;     }     printf("Enter the adjacency matrix:\n");     for (i = 1; i <= n; i++)         for (j = 1; j <=...

BFS

  #include <stdio.h> int queue[100]; int front = 0, back = 0; void push(int var) {     queue[back++] = var; } void pop() {     front++; } int main() {     int graph[10][10], visited[10] = {0};     int n, v, i, j;     printf("Enter the number of vertices: ");     scanf("%d", &n);     printf("Enter graph data in matrix form:\n");     for (i = 0; i < n; i++)         for (j = 0; j < n; j++)             scanf("%d", &graph[i][j]);     printf("Enter the starting vertex: ");     scanf("%d", &v);     if (v < 1 || v > n)     {         printf("Invalid starting vertex.\n");         return 1;     }     visited[v - 1] = 1;     push(v);     printf("BFS traversal: ");     while (front != back)     ...

knuth pattern matching

  #include <stdio.h> #include <string.h> int lps[100]; void longestPrefixSuffix(char p[]) {     int i = 1, j = 0;     int m = strlen(p);     lps[0] = 0;     while (i < m)     {         if (p[i] == p[j])         {             lps[i] = j + 1;             i++; j++;         } else if (j > 0)         {             j = lps[j - 1];         } else {             lps[i] = 0;             i++;         }     } } int kmp(char p[], char t[]) {     int n = strlen(t), m = strlen(p);     longestPrefixSuffix(p);     int i = 0, j = 0;     while (i < n)     {         if (p[j] == t[i]) ...

boyer pattern matching program

 #include <stdio.h> #include <string.h> int main() { char text[100], pattern[50]; printf("enter the text"); gets(text); printf("enter the pattern"); gets(pattern); BFPA(text, pattern); return; } void BFPA(char t[], char p[]) { int ls = strlen(t); int lp = strlen(p); int max = ls - lp + 1; int flag, i, j; for(i = 0; i < max; i++)   { flag = 1; for(j = 0; j < lp; j++)   { if(t[i + j] != p[j]) { flag = 0; break; } } if(flag == 1)  // removed stray semicolon {  printf("pattern found at the %d\n", i); } } }

applet factorial

 file name :Facto.java import java.awt.*; import java.applet.Applet; import java.awt.event.*; import javax.swing.*; /* <applet code="Facto.class" width="600" height="200"> </applet> */ public class Facto extends Applet implements ActionListener {     Label l1, l2, l3;     TextField t1, result;     Button b1;     public void init() {         l1 = new Label("Enter a Number: ");         add(l1);         t1 = new TextField(10);         add(t1);         l3 = new Label("Result: ");         add(l3);         result = new TextField(10);         result.setEditable(false);         add(result);         b1 = new Button("Factorial");         add(b1);         b1.addActionListener(this);     }   ...

Traffic lights

Image
 file name :Traffic  program : import java.awt.*; import javax.swing.*; import java.awt.event.*; class Traffic extends JFrame implements ActionListener {     JLabel l1, l2, l3;     JRadioButton r1, r2, r3;     ButtonGroup bg;     Traffic() {         l1 = new JLabel(" ");         l1.setBounds(50, 200, 200, 30);         add(l1);         l2 = new JLabel(" ");         l2.setBounds(50, 240, 200, 30);         add(l2);         l3 = new JLabel(" ");         l3.setBounds(50, 260, 200, 30);         add(l3);         r1 = new JRadioButton("RED");         r1.setBounds(100, 60, 100, 30);         r1.setBackground(Color.RED);         r2 = new JRadioButton("YELLOW");         r2.s...

heap sort

  HEAP SORT  #include <stdio.h> void swap(int *a, int *b) {     int temp = *a;     *a = *b;     *b = temp; } void heapify(int a[], int n, int i) {     int largest = i;      int left = 2 * i + 1;     int right = 2 * i + 2;      if (left < n && a[left] > a[largest])         largest = left;     if (right < n && a[right] > a[largest])         largest = right;     if (largest != i) {         swap(&a[i], &a[largest]);         heapify(a, n, largest);     } } void heapSort(int a[], int n) {     int i;     for (i = n / 2 - 1; i >= 0; i--)         heapify(a, n, i);     for (i = n - 1; i >= 0; i--) {         swap(&a[0], &a[i]);         heapify(a, i, 0); ...

Applet DIViSION

 Apple divers program  import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.applet.Applet; /*<applet code="Divers.class"width=600 height=300> </applet>*/ public class Divers extends Applet implements ActionListener  {     Label l1, l2, l3;     TextField t1, t2, Result;     Button b1;     public void init()      {         l1 = new Label("Enter first num");         add(l1);         t1 = new TextField(10);         add(t1);         l2 = new Label("Enter second num");         add(l2);         t2 = new TextField(10);         add(t2);         l3 = new Label("The result:");         add(l3);         Result = new TextField(10);         add(Result);   ...

Merge sort

MERGE SORT  #include <stdio.h> void merge(int a[], int lb, int mid, int ub)  {     int i = lb;     int j = mid + 1;     int k = lb;     int b[100];      while (i <= mid && j <= ub)  {         if (a[i] <= a[j])  {             b[k] = a[i];             i++;         } else {             b[k] = a[j];             j++;         }         k++;     }     while (i <= mid)  {         b[k] = a[i];         i++;         k++;     }     while (j <= ub)  {         b[k] = a[j];         j++;         k++;     }     for (k ...

quick sort

Quick sort  #include<stdio.h> void quicksort(int a[],int lb,int ub); int position(int a[],int lb,int ub); void swap(int *a,int *b); int main()  {     int n,i;     printf("Enter number of elements you want to insert: ");     scanf("%d",&n);     int a[n];        printf("Enter the elements: ");     for(i=0;i<n;i++)      {         scanf("%d",&a[i]);     }     quicksort(a,0,n-1);     printf("Sorted elements: ");     for(i=0;i<n;i++)      {         printf("%d ", a[i]);     } } void quicksort(int a[],int lb,int ub)  {     if(lb<ub)      {         int loc=position(a,lb,ub);         quicksort(a,lb,loc-1);         quicksort(a,loc+1,ub);     } } int position(int a[],int lb,int ub)...