Advertisement
Guest User

DS

a guest
Feb 17th, 2020
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.12 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include "Set.h"
  5. //#include <alloc.h>
  6.  
  7.  
  8. int main(){
  9.  
  10.    
  11.  
  12.  
  13.  
  14. return 0;
  15. }
  16. Set* fset(unsigned len){
  17.        
  18.     Set *set;
  19.     int i,max, min;
  20.     srand(time(0));
  21.  
  22.     set = (Set*)malloc(sizeof(Set));
  23.    
  24.     set->set_arr = (unsigned*)malloc(sizeof(unsigned)*len);
  25.    
  26.     max = 5;
  27.     min = 0;
  28.  
  29.     for(i=0; i<len; i++){          
  30.         set->set_arr[i] = rand()%(max - min +1); // (min,max)
  31.         max += 6;
  32.         min += 6;
  33.     }
  34.     return set;
  35. }
  36.  
  37. void FreeSet(Set *set){
  38.  
  39.     free(set->set_arr);
  40.     free(set);
  41. }
  42.  
  43. void print(unsigned len, Set *set){
  44.     int i;
  45.  
  46.     for(i=0; i<len; i++)
  47.         printf(set->set_arr[i]);
  48.  
  49.     return set;
  50. }
  51. unsigned find_element(Set *My_set, unsigned element){
  52.  
  53.     int i;
  54.  
  55.     for(i=0; i< My_set->len;i++)
  56.         if(My_set->set_arr[i]==element)
  57.             return 1;
  58.  
  59. }
  60. Set* intersection(Set* A, Set* B){
  61.    
  62.     int i,j, k;
  63.     Set* C;
  64.     k = 0;
  65.  
  66.     C = (Set*)malloc(sizeof(Set));
  67.     C->set_arr = (unsigned*)malloc(sizeof(unsigned));
  68.     for(i=0;i<A->len; i++)     
  69.         if(find_element(B,A->set_arr[i])){
  70.             C->set_arr[k] = A->set_arr[i];
  71.             k++;
  72.             realloc(C->set_arr, (sizeof(Set)*(k+1)));          
  73.         }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement