در خط 1 این کد ابتدا از بین نقاط Q نقطه اینقطهای را که کمترین مختصه y را دارد انتخاب میکند و آن را <math>p_0</math> می نامد. و سپس در خط 2 نقاط باقیمانده را نسبت به زاویه ی قطبی آن ها نسبت به <math>p_0</math> مرتب میکند. در این مرتب سازی در صورتی که دو نقطه زاویه برابری داشتند آن نقطه اینقطهای را که فاصله کمتری تا <math>p_0</math> دارد را حذف میکند و در پایان نقاط مرتب شده را درآرایه ی p قرار میدهد و نقاط <math>p_0</math> و <math>p_1</math> و <math>p_2</math> را به پشته s اضافه میکند. در خطوط 6 تا 10 که در واقع قسمت اصلی الگوریتم است یک بار کل نقاط s را پرمایش میکند. در هر مرحله به ازای هر نقطه <math>p_i</math> تا زمانی که زاویه بین دو نفر آخر پشته s و <math>p_i</math> بیش از 180 درجه باشد نفر آخر پشته را حذف میکند.