CSCI  1321 Tentative Schedule - Spring 2001
 Class 
Topic(s)
 Reading Assignments 
& Handouts
 Laboratory 
Assignments 
1/9
 

[1]

 Introduction To Class
Distribute & Discuss Course Outline
Introduction To Visual C++
 Course Outline

Re-Read Course Outline
Fill Out Questionnaire (Lab I-5 points)

Create/Execute A Console 
Application - Empty Project

Resizing The Console Window 

---- Optional  ----
  Intro To NT/Win95/Win98

 Questionnaire 

Hello World Lab

1/11
 

[2]

 Review Classes

Class Part
Class Methods
Constructor - Class
Destructor - ~Class
void Set (char NewName[], int NewNo)
void Display(void)
Prototype
void TestPart();

Function Overload
Display(char Message[] = "")

String Methods
strcpy
strlen

Partitioning HPP & CPP
HPP Contains
Includes, Defines, Class 
Definitions, Template Methods, 
Function Prototypes
CPP Contains
Include HPP
Non-Template Methods
Functions

 Read 140-159

 

 DellComputer Lab I

Dell Computer Lab II
























 

1/16
 

[3]

 Function Overload Revisited
Part(char NewName[] = "", int NewNo=0)
Part(int NewNo, Char NewName[]="")

# include <stdio.h>
Dynamic Memory
Memory Address
Pointer
Pointer Variable Declaration
New
Delete
Dynamic Arrays

Dynamic Array Class

 
 
1/18
 

[4]

 LIFO
FIFO
Introduction To The Stack
Process Infix Expression
Scope Openers { [ (
Scope Closers } ] }
Stack.hpp
Stack.cpp

Dynamic Memory Stack Class
Stack(long int NewMax = 5)
~Stack(void)
bool Empty (void)

 
 Code 
Stack.hpp
Stack.cpp

Test

1/23
 

[5]

Review 
Dynamic Memory Stack Class
Stack(long int NewMax = 5)
~Stack(void)
bool Empty (void)

bool Push(char NewInfo)
bool Pop (char & TopInfo)
bool Resize (float PercentIncrease)

Pros/Cons of Static Array 
vs
Dynamic Array

Software Design - Invest In One Stack

 
  Part 2 Lab
Due 2/1/01

Computer 2 Lab
Due 2/1/01

1/25
 

[6]

 Templates
template <class T>
Switch

Transform Stack Into 
Template Stack

 
 Infix Lab
Due 2/1/01
1/30
 

[7]

 Review 
Introduction To Double Linked List
Nodes - Headers

Prefix Calculation
Postfix Calculation

Postfix Evaluation Algorithm

 
 
2/1
 

[8]

 Introduction To Queue
bool Insert (InfoType, NewInfo)
bool Remove (InfoType & FrontInfo)
bool Empty(void)
bool Full (void)
bool Resize(float PercentIncrease)

Template DLNodeS Class
DLNodeS(void)
DLNodeS(Infotype NewInfo)

 
  T-DLList - Nodes & Headers Lab
2/6
   DLListS(unsigned long int NewMaxHeaders  = 4, 
                     unsigned long int NewMaxNodes = 10);
  ~DLListS(void);

    NodePtr GetNode(void);
    void FreeNode(NodePtr OldNodePtr);
    bool Empty(long int HeaderNo);
    bool Push(long int HeaderNo, InfoType NewInfo);
    bool Pop(long int HeaderNo, InfoType & OldInfo);

 
 T-DLList - Stack Lab
   Due 2/13/01
2/8
     Review Double Linked List
Single Linked List
Circular Linked List
Double Circular Linked List
 
 
2/13
 Using A Linked List As A Queue
bool Insert(long int HeaderNo, InfoType NewInfo);
    bool Remove(long int HeaderNo, InfoType & OldInfo);
 bool Empty(long int HeaderNo); 
 
 
2/15
 Review - Board
Single Linked List
Double Linked List
Double Circular Linked List
Circlar Linked List
 
 T-DLList - Queue & Linked List Lab
   Due 2/22/01
2/20
   bool InsertAfter(long int HeaderNo, InfoType NewInfo, 
NodePtr LeftBrother);
    bool Inplace(long int HeaderNo, InfoType NewInfo); 

      NodePtr Find (long int HeaderNo, char SoughtCharKey[]);
      NodePtr Find (long int HeaderNo, long int                               SoughtLongIntKey);
      NodePtr Find (char SoughtCharKey[]); 
      NodePtr Find (long int SoughtLongIntKey); 

 
 
2/22
 Big Integer Lab
Team (1-2 Persons]

[Use Your Double Linked List Implementation]
BigIntegers
Data (6,300);
Data.Set(1, "No1", "111222333444555666");
Data.Set(2, "No2", "222333444555666777");
Data.Get(3); // Prompt for HeaderNo, Title, No
Data.DisplayNo(1,false, 20, true);
//HeaderNo, Title=F, NoChars=0 [Rt Justify], LineFeed=T

Data.DisplayNo(2,false, 20);
Data.Display(3);
Data.Add(4,1,2); 
// Empty List 4 - Place Sum of Lists  1 + 2 in 4
Data.DisplayNo(1,false, 20);
Data.DisplayNo(2,false, 20);
Data.DisplayNo(4,false, 20);
Data.Subtract(5,1,2);
// Empty List 5 - Place Difference  of Lists  1 - 2 in 5
Data.DisplayNo(1,false, 20);
Data.DisplayNo(2,false, 20);
Data.DisplayNo(5,false, 20);

 
 
2/27
Review For Exam
 
  Big No Lab
Due 3/23
3/1
 Exam I
 
 
3/6
Introduction To Binary Tree
Dynamic Memory
Skew, Complete, Balanced
Order N Log-2 N Search For Balanced
Inorder Traversal
Preorder Traversal
Post Order Traversal
 
 
3/8
 Dynamic GetNode, FreeNode
Set Left, SetRight, InPlace
Traversing Trees - Display
 
 
3/13
 Spring Break
 
 
3/15
 Spring Break
 
 
3/20
 Analysis Of Efficiency
List Average Search Time
Tree Average Search Time
 
  Dynamic Binary Tree - Inplace Lab
Due 3/30/01
3/22
 Tree Balancing Algorithms
Tree Deletion Algorithms
 
 
3/27
 Intro To Direct Access Files
fopen
fread
fseek
fclose
 
  Dir Access In Class Lab
3/29
 Direct Access Sorting
Bubble Sort
ReadRecord
WriteRecord
FileLength
Order N Square
Best Case, Worst Case 
For Bubble Sort
 
 Dynamic Binary Tree II NoLevels, Delete Lab
Due 5/1/01
4/3
 Time Sorts Of 
Different Sizes
 
 
4/5
 Internet Sort Illustrations
 
 Sort Presentation Lab
Starts 4/12/01
4/10
 Work With Sort Team On 
Final Project
 
 
4/12
 Sort(s) Hashing 
 
 
4/17
Sort(s) Hashing 
 
 
4/19
Sort(s) Review 
 
 
4/24
 Exam II
   
4/26
 Heap Sort
 
 
5/2 & 5/3
Reading Days
 
 
There Will Be A Final Project!  There Will Not Be A Comprehensive Final Exam During Exam Week!