Algoritmul Jarvis (sau algoritmul de traversare Jarvis, sau algoritmul de împachetare cadou) determină o secvență de elemente ale mulțimii care formează o carcasă convexă pentru acest set. Metoda poate fi imaginată ca înfășurarea unui set de cuie înfipte într-o scândură cu o frânghie. Algoritmul rulează în timp , unde este numărul total de puncte de pe plan, este numărul de puncte din carcasa convexă.
Să fie dat un set de puncte . Punctul de jos din stânga este luat ca punct inițial (poate fi găsit în spatele trecerii obișnuite prin toate punctele), este exact partea de sus a carcasei convexe. Următorul punct ( ) este punctul care are cel mai mic unghi polar pozitiv în raport cu punctul ca origine. După aceea, pentru fiecare punct (2<i<=|P|) în sens invers acelor de ceasornic, se caută un astfel de punct găsind dincolo printre punctele rămase (+ cel mai jos din stânga), în care unghiul cel mai mare dintre linii și va fi format . Va fi următorul vârf al carcasei convexe. În acest caz, unghiul în sine nu este căutat, ci numai cosinusul său este căutat prin produsul scalar dintre raze și , unde este ultimul minim găsit, este minimul anterior și este candidatul pentru următorul minim. Noul minim va fi punctul în care cosinusul va lua cea mai mică valoare (cu cât cosinusul este mai mic, cu atât unghiul său este mai mare). Găsirea vârfurilor învelișului convex continuă până la . În acel moment, când următorul punct din carcasa convexă coincide cu primul, algoritmul se oprește - se construiește carcasa convexă.
Bucla (4) va fi executată o dată, în timp ce bucla (a) este executată de fiecare dată pentru . Toate celelalte operațiuni sunt efectuate în . Prin urmare, algoritmul funcționează pentru sau în cel mai rău caz, atunci când toate punctele cad în carcasa convexă.