• 캠퍼스북
  • 파일시티 이벤트
  • LF몰 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

[알고리즘]배낭문제(0/1Knapsack Problem)

*준*
개인인증판매자스토어
최초 등록일
2011.12.23
최종 저작일
2011.11
7페이지/파일확장자 압축파일
가격 5,000원 할인쿠폰받기
다운로드
장바구니

소개글

배낭 알고리즘을 C코드로 구현한 소스와 보고서이다.

1.Knapsack problem 이란?
일명 배낭 문제라고 하는 이 알고리즘은 조합 최적화의 유명한 문제이다.
간단하게 말하면 한, 여행가가 가지고 가는 배낭에 담을 수 있는 무게의 최댓값이 정해져 있고, 일정 가치와 무게가 있는 짐들을 배낭에 넣을 때, 가치의 합이 최대가 되도록 짐을 고르는 방법을 찾는 문제이다.

이 문제는 짐을 쪼갤 수 있는 경우와 짐을 쪼갤 수 없는 경우 두 가지로 나눌 수 있는데 쪼갤 수 있는 경우의 배낭문제를 분할가능 배낭문제 (Fractional Knapsack Problem), 짐을 쪼갤 수 없는 경우의 배낭문제를 0-1 배낭문제(0-1 Knapsack Problem)라 부른다.

2.함수 설명

knapsack() : 최대이익을 계산하여 물건들의 최적조합을 찾는 함수.

-중량을 초과하지 않고 현재의 이익이 이전에 구한 최대이익보다 크다면 현재의 이익이 최대이익이 되고 현재 물건들의 조합은 최적의 조합이 된다.
-현재의 물건이 유망한가를 검사하여 유망하면 그 다음 물건을 포함 했을 때와 안했을 때를 검사한다.
-다음 물건에 관하여 knapsack()함수를 재귀적으로 호출하여 최종 솔루션을 구한다.

promising() : bound값과 최대 이익값을 비교하여 그 물건에 대해 유망한지 아닌지 판별하는함수

-중량을 초과 하지 않고 현 상태에서 구한 bound값이 이전에 구한 maxprofit 보다 크다면 유망하다.

3.프로그램 소스
#include

#define MAX 501
int knapsack(int i,int profit,int weight);
int promising(int i,int profit,int weight);


int n,w;
float knap[MAX][4];
float temp[MAX][4];
int include[MAX];
int set[MAX];

int i,numbest;
float t1,t2,t3,t4;
int profit=0,weight=0,maxprofit=0,totweight=0;
float ww=0;
float pp=0;

컴파일 실행환경

Visual Studio 2010

압축파일 내 파일목록

0-1 knapsack/0-1 napsack.sln
0-1 knapsack/0-1 napsack.suo
0-1 knapsack/0-1 napsack.vcxproj
0-1 knapsack/0-1 napsack.vcxproj.filters
0-1 knapsack/0-1 napsack.vcxproj.user
0-1 knapsack/input.txt
0-1 knapsack/napsack.cpp
0-1 knapsack problem.hwp

참고 자료

Algorithm Design
*준*
판매자 유형Bronze개인인증

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
탑툰 이벤트
  [알고리즘]배낭문제(0/1Knapsack Problem)
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업