مسئله کوله پشتی که با عنوانهای Knapsack یا Rucksack مطرح میشود، مسئلهای در بهینهسازی ترکیبیاتی است. فرض کنید مجموعهای از اشیا، که هر کدام داری وزن و ارزش خاصی هستند در اختیار دارید. به هر شی تعدادی را تخصیص دهید به طوری که وزن اشیا انتخاب شده کوچکتر یا مساوی حدی از پیش تعیین شده، و ارزش آنها بیشینه شود. علت نامگذاری این مسئله، جهانگردی است که کوله پشتی ای با اندازهٔ محدود دارد و باید آن را با مفیدترین صورت ممکن از اشیا پر کند.
مسئله کوله پشتی Knapsack یا Rucksack به زبان C