This entire discipline is incredibly useful, and as much of it should be included as possible.
Emphasize connection to discrete probability. (I am assuming that these students would still have to take Prob & Stats as an external course, like most other majors do.)
Lexographic, colexicographic, and quasi-lexographic ordering, both in general and for monomials
Of course, some graph theory. Include depth/breadth first searches, Dijkstra's algorithm, Kruskal's algorithm.
The basics of linear algebra would, of course, need to be introduced before getting into the numerical part.
Solving Solving systems of linear equations is important. So ispervasive, and solving them quickly. This discipline is exceedingly well motivated for comp sci studentsdefinitely important.
For an example of applications, return to a graph theory for a moment to show them a linear algebraic graph drawing algorithm
Linear programming / convex analysis if there's time
- This would be the last topic. This should be presented as a natural synthesis of everything learned so far. Anything in graphics programming requires a good understanding of vectors, as do many scientific programming applications. Learning how to take normals, how to compute projections, how to navigate vector fields, etc. all has direct practical value. Learning how to think about vectors in general does too. Due to time constraints, I wouldn't try to get any more in depth than that.
This would be the last topic. This should be presented as a natural synthesis of everything learned so far. Anything in graphics programming requires a good understanding of vectors, as do many scientific programming applications. Learning how to take normals, how to compute projections, how to navigate vector fields, etc. all has direct practical value. Learning how to think about vectors in general does too. Due to time constraints, I wouldn't try to get any more in depth than that.