Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define NULL 0
- using namespace std;
- struct Node{
- int data1,data2,data3;
- Node* next;
- };
- Node *head = NULL;
- int min_diff = INT_MAX;
- Node* insert(int data1, int data2, int data3){
- Node* temp = new Node();
- temp->data1 = data1;
- temp->data2 = data2;
- temp->data3 = data3;
- temp->next = NULL;
- if(head == NULL){
- head = temp;
- return head;
- }else{
- temp->next = head;
- head = temp;
- return head;
- }
- }
- void print(){
- Node *temp = head;
- while(temp != NULL){
- cout << temp->data1 <<" "<< temp->data2<<" "<<temp->data3<<endl;
- temp = temp->next;
- }
- }
- void make_sub_array(int arr[], int length){
- int diff;
- for(int i =0;i<length; i++){
- for(int j =i+1;j<length;j++){
- diff = abs(arr[i] - arr[j]);
- insert(arr[j],arr[i],diff);
- min_diff = min_diff>diff?diff:min_diff;
- }
- }
- }
- void small_sub(){
- Node *temp=head;
- //int min = temp->data3 ;
- while(temp!=NULL){
- if(temp->data3 == min_diff) cout << "("<<temp->data1<<","<<temp->data2<<") ";
- temp=temp->next ;
- }
- }
- int main()
- {
- int arr[] = {5,4,3,2,1};
- make_sub_array(arr,sizeof(arr)/sizeof(arr[0]));
- small_sub();
- return 0;
- }
Add Comment
Please, Sign In to add comment