<p>This thesis uses the kinetic Monte Carlo (KMC) algorithm to examine the growth morphology and structure of nanocrystals. Crystal growth in a supersaturated gas of atoms and in an undercooled binary melt is investigated. First, in the gas phase, the interplay of the deposition and surface diffusion rates is studied. Then, the KMC algorithm is refined by including solidification events and finally, by adding diffusion in the surrounding liquid. A new algorithm is developed for modelling solidification from an undercooled melt. This algorithm combines the KMC method, which models the change in shape of the crystal during growth, with a macroscopic continuum method that tracks the diffusion of material through solution towards the crystal. For small length and time scales, this approach provides simple, effective front tracking with fully resolved atomistic detail of the crystal-melt interface. Anisotropy is included in the model as a surface diffusion process and the growth rate of the crystal is found to increase monotonically with increase in the surface anisotropy value. The method allows for the study of multiple crystal nuclei and Ostwald ripening. This method will aid researchers to explain why certain crystal shapes form under particular conditions during growth, and may enable nanotechnologists to design techniques for growing nanocrystals with specific shapes for a variety of applications, from catalysis to the medicine field and electronics industry. This will lead to a better understanding of the atomistic process of crystal growth at the nanoscale.</p>