當前位置:首頁 » 編程語言 » 集裝箱C語言

集裝箱C語言

發布時間: 2022-06-07 04:46:50

① 集裝箱中HC 和HQ有什麼區別

HC/HQ一樣的!!都是高箱(高度在2.9M;9英尺6英寸)! HC/HQ一般用語40英尺集裝箱,目前還沒有發現有船公司說過20HQ或者HC的,一般就是20GP/ST;(GP和ST也一樣都是普通箱)20/OT ;40FT 40OT 40HC/HQ; !!!一般有以下幾種箱子, 干貨箱(DRY CARGO CONTAINER)
開頂箱(OPEN TOP CONTAINER)
通風箱,(VENTILATED CONTAINER)
台架箱(PLATFORM BASDED CONTAINER)
冷藏箱(REDFER CONTAINER)
罐式箱(TANK CONTAINER)
汽車集裝箱(CAR CONTAINER)

② 已知貨物長寬高的裝箱問題,求c語言代碼

你這N 到底是多少 ,求具體數值。

③ C語言關於裝載問題(背包問題)的一個程序 我寫的程序輸出不滿足題意 但我檢查不出來錯誤 希望大神解決

想法:是先讓c1船盡量裝貨物是可以的,但是演算法應該不對,可以用下面的演算法

// 前k個數中去任意個數,且這些數之和為s的取法是否存在
int main()
{
int n, i, k1, k2, s, u;
cin >> n;
for (i=1; i<=2*n; i++)
cin >> A[i];
int sum = 0;
for (i=1; i<=2*n; i++)
sum += A[i];
memset(dp,0,sizeof(dp));
dp[0][0]=true;
// 外階段k1表示第k1個數,內階段k2表示選取數的個數
for (k1=1; k1<=2*n; k1++) // 外階段k1
{
for (k2=k1; k2>=1; k2--) // 內階段k2
for (s=1; s<=sum/2; s++) // 狀態s
{
//dp[k1][s] = dp[k1-1][s];
// 有兩個決策包含或不包含元素k1
if (s>=A[k1] && dp[k2-1][s-A[k1]])
dp[k2][s] = true;
}
}
// 之前的dp[k][s]表示從前k個數中取任意k個數,經過下面的步驟後
// 即表示從前k個數中取任意個數
for (k1=2; k1<=2*n; k1++)
for (s=1; s<=sum/2; s++)
if (dp[k1-1][s]) dp[k1][s]=true;
// 確定最接近的給定值sum/2的和
for (s=sum/2; s>=1 && !dp[2*n][s]; s--);
}

④ 子集樹問題(用C語言或C++完成)

//說明:我是用c++編的。解法是用棧來進行遞歸模擬,解法編譯過是正確的。我有注釋說明。不過要改成遞歸比較麻煩。而且,解題一般是不會限制解法的,你看看這個非遞歸的解法吧。
#include <iostream>
#include <string>
using namespace std;

void main(){
int i,j,n,c,temp,L[100],S[100],p,sum,Get,max;
cin>>n>>c;
for (i=0;i<n;i++){
cin>>L[i];
}
max=0;
sum=0;
p=-1;//棧初始化
for (i=0;i<n;i++){
if (sum+L[i]<=c) {
sum=sum+L[i];
p++;
S[p]=i;//i入棧
break;//尋找第一個
}
}
while ((p!=-1)||(i<=n-1)){//當棧不空或未檢索到末尾時運行
if (i<=n-1){//如果是未檢索到末尾時
Get=S[p];//取棧頂元素
for (i=Get+1;i<n;i++){
if (sum+L[i]<=c) {
sum=sum+L[i];
p++;
S[p]=i;//i入棧
}
}
}
if(i==n){//如果檢索到末尾但棧不為空時
if (sum>max) max=sum;
Get=S[p];//取棧頂元素
/*for (j=0;j<=p;j++){
temp=S[j];
cout<<L[temp]<<" ";
}
cout<<endl;*///說明此處用來檢驗棧模擬的過程,及其正確性,可輸出解的子集,你可以看看
p--;//模擬出棧
//cout<<max<<" ";
sum=sum-L[Get];//還原
for (i=Get+1;i<n;i++){//
if (sum+L[i]<=c) {
sum=sum+L[i];
p++;
S[p]=i;//i入棧
break;//尋找下一個
}
}

}

}
cout<<max<<endl;
}

⑤ c語言中既然int比short int的范圍大,為什麼不直接用int就可以了呢

集裝箱能裝的東西比包裝盒大得多,為什麼包裝食品不用集裝箱呢?
c語言提供這么多種類型,就是為了讓程序員根據自己的需要來選擇合適的類型。
有的時候,條件有限,必須節省存儲空間,如果short int,甚至char已經夠用,那麼就盡量不用int,知道了么。是根據實際情況來的。

⑥ C語言鏈表和棧,還用隊列分別用於什麼場合,請專業人士具體解說一下!

通常鏈表支持線性時間查找,線性時間訪問,常數時間插入,常數時間刪除,比較適合需要多次在中間插入和刪除的場合
棧(stack)遵循先進後出原則(FILO),可用於模擬倉儲,遞歸,深搜等其他符合FILO的模型
隊列(queue)遵循先進先出原則(FIFO),可用於模擬排隊,流,消息隊列等符合FIFO的模型

其他具體情況就要視需要而定了

熱點內容
擔保中介源碼 發布:2025-02-08 17:14:37 瀏覽:408
手機存儲卡速度測試 發布:2025-02-08 17:02:57 瀏覽:24
洪恩編程 發布:2025-02-08 17:02:19 瀏覽:812
linux遠程式控制制 發布:2025-02-08 17:02:16 瀏覽:152
珠心算演算法 發布:2025-02-08 17:00:37 瀏覽:916
動態ip可以做伺服器么 發布:2025-02-08 17:00:33 瀏覽:218
oracle定義存儲過程 發布:2025-02-08 16:54:35 瀏覽:149
mac玩飢荒要什麼配置 發布:2025-02-08 16:52:18 瀏覽:681
androidattributeset 發布:2025-02-08 16:51:23 瀏覽:423
c語言調用函數返回值 發布:2025-02-08 16:51:19 瀏覽:789