Skip to content

Instantly share code, notes, and snippets.

View tareq-si-salem's full-sized avatar

Tareq Si Salem tareq-si-salem

View GitHub Profile
@tareq-si-salem
tareq-si-salem / Main.java
Last active August 5, 2016 14:23
Graph edges coloring heuristic greedy algorithm Console version
import java.util.*;
public class Main {
static ArrayList<Edge> edges;
// Since We don't know how many edges we have initially we used array list to change size dynamically.
static char colors[];
// Colors array is used to specify the corresponding color for each edge colors.length == edges.size()
static int colors_number = 0;
@tareq-si-salem
tareq-si-salem / Main.java
Created August 5, 2016 14:24
Graph vertices coloring heuristic greedy algorithm GUI version
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.event.*;
import javafx.scene.layout.*;
import java.util.*;
import javafx.scene.shape.*;
import javafx.scene.paint.*;
import javafx.scene.input.MouseEvent;
@tareq-si-salem
tareq-si-salem / lists.cpp
Created August 5, 2016 17:00
Linked List and Array List Implementation
#include <iostream>
#include <cstdio>
using namespace std;
const int MAX = 10;
// MAX specifies the maximum size the list can take
// in the array case.
// compares two strings according to Alphabetical order
// if a string is greater than the other returns 1
@tareq-si-salem
tareq-si-salem / datastructure.h
Created August 5, 2016 17:16
a header file that includes Queues and Stacks Implementations
#ifndef DATASTRUCTURE_H
#define DATASTRUCTURE_H
// a condition to avoid including this header file twice
#include <iostream>
#define MAX 100
using namespace std;
struct Person {
char *firstName;
@tareq-si-salem
tareq-si-salem / main.cpp
Created August 5, 2016 17:17
Test the Queue and Stack data structures
#include "datastructure.h"
// include our custom header file
int main() {
char option;
bool loop = true;
Queue queue;
StackArray stack;
cout << "1. Add new Person" << endl;
cout << "2. Delete a Person" << endl;
@tareq-si-salem
tareq-si-salem / Main.java
Created August 5, 2016 17:31
Huffman code algorithm implementation
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// create a new file
@tareq-si-salem
tareq-si-salem / HuffmanCodeGenerator.java
Created August 5, 2016 17:33
Huffman code algorithm class implementation
public class HuffmanCodeGenerator {
// a class to hold all operation that are related
// to generating a huffman code
private void huffman() {
int[] twoMins = new int[2];
findTwoMins(twoMins);
create(twoMins[0], twoMins[1]);
@tareq-si-salem
tareq-si-salem / Main.java
Created August 5, 2016 17:58
File compression using Huffman Code
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
@tareq-si-salem
tareq-si-salem / HuffmanCodeGenerator.java
Created August 5, 2016 17:58
File compression using Huffman Code
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.PrintWriter;
public class HuffmanCodeGenerator {
@tareq-si-salem
tareq-si-salem / Main.java
Created August 5, 2016 18:30
Comparing between Merge Sort, Heap Sort, Bubble Sort, Bin Sort
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
// testing if the four algorithms are correct
int length = 10;
int max = 100;
int min = 0;