rendered paste bodytemplate <class T>
class Set
{
public:
Set(int = 10);
~Set() { delete [] setPtr ; }
int insert(const T&);
void print();
T* unionSet(const T&);
T* intersectSet(const T&);
private:
T* setPtr;
int pos;
};
template <class T>
Set<T>::Set(int s)
{
setPtr = new T[s];
pos = 0;
}
template <class T>
int Set<T>::insert(const T& item)
{
T temp;
int i = 0;
while(temp = setPtr[i++])
if(temp == item)
return 0;
setPtr[pos++] = item;
//consider revision
int j;
T index;
for (i=0; i < pos; i++){
index = setPtr[i];
j = i;
while ((j > 0) && (setPtr[j-1] > index)){
setPtr[j] = setPtr[j-1];
j--;
}
setPtr[j] = index;
}
return 1;
}
template <class T>
T* Set<T>::intersectSet(const T& inter)
{
return 0;
}
template <class T>
void Set<T>::print()
{
int i = 0;
while(i < pos){
cout << setPtr[i] << " ";
i++;
}
cout << endl;
}