连铸有限差分法传热数值模拟

2023-10-28 03:30

本文主要是介绍连铸有限差分法传热数值模拟,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有限差分法建立方坯连铸机传热方程,计算中对各冷却段采用不同的冷却方式。
参考:
大圆坯连铸传热数值模拟*
连铸坯凝固传热的数值模拟**
大方钢坯连铸二冷区传热与凝固过程数值模拟***

以连铸板坯为对象,横断面建立三维传热模型,计算分析连铸过程中的铸坯特征点温度、坯壳厚度,其结果对结晶器、二冷配水及轻压下区间优化提供指导,对改善板坯内裂纹与中心偏析提供帮助。

在这里插入图片描述

clc;clear;close all;
Tim_Mic=0.2;                                                       %离散时间间隔
X_Mic=0.004;Y_Mic=0.004;                                           %X和Y轴的离散间隔 
S_X=0.18/2;S_Y=0.18/2;                                             %铸坯尺寸180mm × 180mm 大方坯(结晶器断面尺寸)180指宽度b,180指高度h
num_x=round(S_X/X_Mic);                                          %X轴上的离散点个数
num_y=round(S_Y/Y_Mic);                                          %Y轴上的离散点个数 
%---------------------------------------工艺参数——————————————————————————————% 
Speed=1.3/60;                                                    %拉速1.3m/min 拉速m/s
Tem_C=1510;                                                      %浇注温度
Tem_W=25;                                                        %冷却水温度
Tem_S=20;                                                        %环境温度
Tem_M=200;                                                       %结晶器铜板温度
ETAM=1.1;                                                        %调整系数                                        
%---------------------------------------设备参数——————————————————————————————%
Lm=0.85;                                                         %结晶器有效长度(入口出口之间的距离)-12页
L_(1)=0.24;L_(2)=2.07;L_(3)=2.23;L_(4)=2.23;                     %各冷却区长度
L_left=16;                                                        %二冷段出口到矫直机的距离
time_m=round(Lm/(Speed*Tim_Mic));                                  %微元体从弯月面到结晶器出口经过的离散时间间隔数
time2=round((Lm+L_(1))/(Speed*Tim_Mic));                            %微元体从弯月面到足辊段出口经过的离散时间间隔数
time3=round((Lm+L_(1)+L_(2))/(Speed*Tim_Mic));                        %微元体从弯月面到一冷段出口经过的离散时间间隔数
time4=round((Lm+L_(1)+L_(2)+L_(3))/(Speed*Tim_Mic));                    %微元体从弯月面到二冷段出口经过的离散时间间隔数
time5=round((Lm+L_(1)+L_(2)+L_(3)+L_(4))/(Speed*Tim_Mic));                %微元体从弯月面到二冷段出口经过的离散时间间隔数
time_air=round((Lm+L_(1)+L_(2)+L_(3)+L_(4)+L_left)/(Speed*Tim_Mic));       %微元体从弯月面到拉娇机入口经过的离散时间间隔数
time_n(1)=time_m;
time_n(2)=time2;
time_n(3)=time3;
time_n(4)=time4;
time_n(5)=time5;
time_n(6)=time_air;
%---------------------------------------热物理参数—————————————————————————%
% 7.40 g/cm^3=7.40 t/m^3=7400 kg/m^3
S_Ds=7400;S_Dl=7000;S_Dsl=7200;                                   %钢坯的密度-24页
Ts=1378;Tl=1478;                                                  %钢坯的固液相线温度-24页
Lf=272000;                                                        %凝固潜热-20页
Cs=710;%钢坯在固相区比热-23页
Cl=810;%钢坯在液相区比热-23页 
Csl=(Cs+Cl)/2+Lf/(Tl-Ts);%两相区等效比热-23页
Ks=28.2;%钢坯在固相区导热系数-22页
Ksl=28.2;%两相区等效比热导热系数-22页
Kl=2*28.2;%钢坯在液相区导热系数-22页
%---------------------------------------计算初始化—————————————————————————%
Tem_Mic=ones(num_x,num_y,time_air);                                 %定义三维数组记录铸坯所有微元体在各时间点的温度
State_Mic=zeros(num_x,num_y);                                       %定义二维数组记录铸坯所有微元体的状态,0表示液态,1表示固液两相,2表示固相
Tem_Mic(:,:,1)=Tem_C*ones(num_x,num_y);                             %钢坯温度初始化
Tem_Center=zeros(time_air);Tem_Center(1)=Tem_C;                        %存储中心温度
Tem_Surface=zeros(time_air);Tem_Surface(1)=Tem_C;                      %存储表面温度
Thick=zeros(time_air);Thick(1)=0;                                      %存储坯壳厚度
%---------------------------------------计算热边界条件—————————————————————————%
h(1)=800;h(2)=800;h(3)=800; h(4)=800;                                     %二冷传热系数(换热系数)-14页
T_target(1)=1080;T_target(2)=1150;T_target(3)=1100;T_target(4)=1050;      %目标温度%*******************************************计算结晶器传热******************************************
for i=2:time_mh_o=837.2-(0.0279*(Speed*100*(i-1)*Tim_Mic)-3.2209)*Speed*60*100;%经验公式h_m=h_o*ETAM;heat_transfer(i)=h_m;%传热系数(换热系数)for p=1:num_xfor q=1:num_yif(Tem_Mic(p,q,i-1)>Tl)K(p,q,i-1)=Kl;C(p,q,i-1)=Cl;D(p,q,i-1)=S_Dl;else if(Tem_Mic(p,q,i-1)>Ts)K(p,q,i-1)=Ksl;C(p,q,i-1)=Csl;D(p,q,i-1)=S_Dsl;elseK(p,q,i-1)=Ks;C(p,q,i-1)=Cs;D(p,q,i-1)=S_Ds;endendendend%中心点O点Tem_Mic(num_x,num_y,i)=Tem_Mic(num_x,num_y,i-1)+2*Tim_Mic/(D(num_x,num_y,i-1)*C(num_x,num_y,i-1)*X_Mic^2)*K(num_x,num_y,i-1)*(Tem_Mic(num_x-1,num_y,i-1)+Tem_Mic(num_x,num_y-1,i-1)-2*Tem_Mic(num_x,num_y,i-1)) ;Tem_Center(i)=Tem_Mic(num_x,num_y,i); %边界点A点Tem_Mic(num_x,1,i)=Tem_Mic(num_x,1,i-1)+2*Tim_Mic/(D(num_x,1,i-1)*C(num_x,1,i-1)*X_Mic^2)*(K(num_x,1,i-1)*(Tem_Mic(num_x-1,1,i-1)+Tem_Mic(num_x,2,i-1)-2*Tem_Mic(num_x,1,i-1))+h_m*(Tem_M-Tem_Mic(num_x,1,i-1))*X_Mic);%边界点B点Tem_Mic(1,num_y,i)=Tem_Mic(1,num_y,i-1)+2*Tim_Mic/(D(1,num_y,i-1)*C(1,num_y,i-1)*X_Mic^2)*(K(1,num_y,i-1)*(Tem_Mic(2,num_y,i-1)+Tem_Mic(1,num_y-1,i-1)-2*Tem_Mic(1,num_y,i-1))+h_m*(Tem_M-Tem_Mic(1,num_y,i-1))*X_Mic);Tem_Surface(i)=Tem_Mic(1,num_y,i);%钢坯外部角部C点Tem_Mic(1,1,i)=Tem_Mic(1,1,i-1)+4*Tim_Mic/(D(1,1,i-1)*C(1,1,i-1)*X_Mic^2)*(1/2*K(1,1,i-1)*(Tem_Mic(2,1,i-1)+Tem_Mic(1,2,i-1)-2*Tem_Mic(1,1,i-1))+h_m*(Tem_M-Tem_Mic(1,1,i-1))*X_Mic);  for j=2:num_y-1%OA边Tem_Mic(num_x,j,i)=Tem_Mic(num_x,j,i-1)+Tim_Mic/(D(num_x,j,i-1)*C(num_x,j,i-1)*X_Mic^2)*K(num_x,j,i-1)*(2*Tem_Mic(num_x-1,j,i-1)+Tem_Mic(num_x,j+1,i-1)+Tem_Mic(num_x,j-1,i-1)-4*Tem_Mic(num_x,j,i-1));%钢坯外部CB边Tem_Mic(1,j,i)=Tem_Mic(1,j,i-1)+2*Tim_Mic/(D(1,j,i-1)*C(1,j,i-1)*X_Mic^2)*(1/2*K(1,j,i-1)*(2*Tem_Mic(2,j,i-1)+Tem_Mic(1,j+1,i-1)+Tem_Mic(1,j-1,i-1)-4*Tem_Mic(1,j,i-1))+h_m*(Tem_M-Tem_Mic(1,j,i-1))*X_Mic);endfor j=2:num_x-1%OB边Tem_Mic(j,num_y,i)=Tem_Mic(j,num_y,i-1)+Tim_Mic/(D(j,num_y,i-1)*C(j,num_y,i-1)*X_Mic^2)*K(j,num_y,i-1)*(Tem_Mic(j+1,num_y,i-1)+Tem_Mic(j-1,num_y,i-1)+2*Tem_Mic(j,num_y-1,i-1)-4*Tem_Mic(j,num_y,i-1)) ;%钢坯外部CA边Tem_Mic(j,1,i)=Tem_Mic(j,1,i-1)+2*Tim_Mic/(D(j,1,i-1)*C(j,1,i-1)*X_Mic^2)*(1/2*K(j,1,i-1)*(Tem_Mic(j+1,1,i-1)+Tem_Mic(j-1,1,i-1)+2*Tem_Mic(j,2,i-1)-4*Tem_Mic(j,1,i-1))+h_m*(Tem_M-Tem_Mic(j,1,i-1))*X_Mic);endfor j=2:num_x-1for k=2:num_y-1%内部节点Tem_Mic(j,k,i)=Tem_Mic(j,k,i-1)+Tim_Mic/(D(j,k,i-1)*C(j,k,i-1)*X_Mic^2)*(K(j,k,i-1)*(Tem_Mic(j+1,k,i-1)+Tem_Mic(j-1,k,i-1)+Tem_Mic(j,k+1,i-1)+Tem_Mic(j,k-1,i-1)-4*Tem_Mic(j,k,i-1)));endend
end%*******************************************计算二冷传热************************************************            
for n=1:4 %冷却区counter=0;while(abs(Tem_Mic(1,num_y,time_n(n+1))-T_target(n))>5 && counter<100)    for i=(time_n(n)+1):time_n(n+1)heat_transfer(i)=h(n);for p=1:num_xfor q=1:num_yif(Tem_Mic(p,q,i-1)>Tl)K(p,q,i-1)=Kl;C(p,q,i-1)=Cl;D(p,q,i-1)=S_Dl;else if(Tem_Mic(p,q,i-1)>Ts)K(p,q,i-1)=Ksl;C(p,q,i-1)=Csl;D(p,q,i-1)=S_Dsl;elseK(p,q,i-1)=Ks;C(p,q,i-1)=Cs;D(p,q,i-1)=S_Ds;endendendend%中心点O点Tem_Mic(num_x,num_y,i)=Tem_Mic(num_x,num_y,i-1)+2*Tim_Mic/(D(num_x,num_y,i-1)*C(num_x,num_y,i-1)*X_Mic^2)*K(num_x,num_y,i-1)*(Tem_Mic(num_x-1,num_y,i-1)+Tem_Mic(num_x,num_y-1,i-1)-2*Tem_Mic(num_x,num_y,i-1)) ;Tem_Center(i)=Tem_Mic(num_x,num_y,i); %边界点A点Tem_Mic(num_x,1,i)=Tem_Mic(num_x,1,i-1)+2*Tim_Mic/(D(num_x,1,i-1)*C(num_x,1,i-1)*X_Mic^2)*(K(num_x,1,i-1)*(Tem_Mic(num_x-1,1,i-1)+Tem_Mic(num_x,2,i-1)-2*Tem_Mic(num_x,1,i-1))+h(n)*(Tem_W-Tem_Mic(num_x,1,i-1))*X_Mic);%边界点B点Tem_Mic(1,num_y,i)=Tem_Mic(1,num_y,i-1)+2*Tim_Mic/(D(1,num_y,i-1)*C(1,num_y,i-1)*X_Mic^2)*(K(1,num_y,i-1)*(Tem_Mic(2,num_y,i-1)+Tem_Mic(1,num_y-1,i-1)-2*Tem_Mic(1,num_y,i-1))+h(n)*(Tem_W-Tem_Mic(1,num_y,i-1))*X_Mic);Tem_Surface(i)=Tem_Mic(1,num_y,i);%钢坯外部角部C点Tem_Mic(1,1,i)=Tem_Mic(1,1,i-1)+4*Tim_Mic/(D(1,1,i-1)*C(1,1,i-1)*X_Mic^2)*(1/2*K(1,1,i-1)*(Tem_Mic(2,1,i-1)+Tem_Mic(1,2,i-1)-2*Tem_Mic(1,1,i-1))+h(n)*(Tem_W-Tem_Mic(1,1,i-1))*X_Mic);  for j=2:num_y-1%OA边Tem_Mic(num_x,j,i)=Tem_Mic(num_x,j,i-1)+Tim_Mic/(D(num_x,j,i-1)*C(num_x,j,i-1)*X_Mic^2)*K(num_x,j,i-1)*(2*Tem_Mic(num_x-1,j,i-1)+Tem_Mic(num_x,j+1,i-1)+Tem_Mic(num_x,j-1,i-1)-4*Tem_Mic(num_x,j,i-1));%钢坯外部CB边Tem_Mic(1,j,i)=Tem_Mic(1,j,i-1)+2*Tim_Mic/(D(1,j,i-1)*C(1,j,i-1)*X_Mic^2)*(1/2*K(1,j,i-1)*(2*Tem_Mic(2,j,i-1)+Tem_Mic(1,j+1,i-1)+Tem_Mic(1,j-1,i-1)-4*Tem_Mic(1,j,i-1))+h(n)*(Tem_W-Tem_Mic(1,j,i-1))*X_Mic);endfor j=2:num_x-1%OB边Tem_Mic(j,num_y,i)=Tem_Mic(j,num_y,i-1)+Tim_Mic/(D(j,num_y,i-1)*C(j,num_y,i-1)*X_Mic^2)*K(j,num_y,i-1)*(Tem_Mic(j+1,num_y,i-1)+Tem_Mic(j-1,num_y,i-1)+2*Tem_Mic(j,num_y-1,i-1)-4*Tem_Mic(j,num_y,i-1)) ;%钢坯外部CA边Tem_Mic(j,1,i)=Tem_Mic(j,1,i-1)+2*Tim_Mic/(D(j,1,i-1)*C(j,1,i-1)*X_Mic^2)*(1/2*K(j,1,i-1)*(Tem_Mic(j+1,1,i-1)+Tem_Mic(j-1,1,i-1)+2*Tem_Mic(j,2,i-1)-4*Tem_Mic(j,1,i-1))+h(n)*(Tem_W-Tem_Mic(j,1,i-1))*X_Mic);endfor j=2:num_x-1for k=2:num_y-1%内部节点Tem_Mic(j,k,i)=Tem_Mic(j,k,i-1)+Tim_Mic/(D(j,k,i-1)*C(j,k,i-1)*X_Mic^2)*(K(j,k,i-1)*(Tem_Mic(j+1,k,i-1)+Tem_Mic(j-1,k,i-1)+Tem_Mic(j,k+1,i-1)+Tem_Mic(j,k-1,i-1)-4*Tem_Mic(j,k,i-1)));endendend if ((Tem_Mic(1,num_y,time_n(n+1))-T_target(n))>5)h(n)=h(n)+20;else if ((Tem_Mic(1,num_y,time_n(n+1))-T_target(n))<-5)h(n)=h(n)-20;elseh(n)=h(n);endend counter=counter+1;                      end %end while
end%*******************************************计算空冷传热******************************************
epsilon = 0.8;%黑度系数(发射率)
sigama = 5.67*10^(-8);%波兹曼常数for i=(time5+1):time_airQ_air=epsilon*sigama;                                           heat_transfer(i)=Q_air*((Tem_Mic(1,num_y,i-1)+273)^2+(Tem_S+273)^2)*((Tem_Mic(1,num_y,i-1)+273)+(Tem_S+273));%辐射传热系数(换热系数)for p=1:num_xfor q=1:num_yif(Tem_Mic(p,q,i-1)>Tl)K(p,q,i-1)=Kl;C(p,q,i-1)=Cl;D(p,q,i-1)=S_Dl;else if(Tem_Mic(p,q,i-1)>Ts)K(p,q,i-1)=Ksl;C(p,q,i-1)=Csl;D(p,q,i-1)=S_Dsl;elseK(p,q,i-1)=Ks;C(p,q,i-1)=Cs;D(p,q,i-1)=S_Ds;endendendend%中心点O点Tem_Mic(num_x,num_y,i)=Tem_Mic(num_x,num_y,i-1)+2*Tim_Mic/(D(num_x,num_y,i-1)*C(num_x,num_y,i-1)*X_Mic^2)*K(num_x,num_y,i-1)*(Tem_Mic(num_x-1,num_y,i-1)+Tem_Mic(num_x,num_y-1,i-1)-2*Tem_Mic(num_x,num_y,i-1)) ;Tem_Center(i)=Tem_Mic(num_x,num_y,i); %边界点A点Tem_Mic(num_x,1,i)=Tem_Mic(num_x,1,i-1)+2*Tim_Mic/(D(num_x,1,i-1)*C(num_x,1,i-1)*X_Mic^2)*(K(num_x,1,i-1)*(Tem_Mic(num_x-1,1,i-1)+Tem_Mic(num_x,2,i-1)-2*Tem_Mic(num_x,1,i-1))+Q_air*((Tem_Mic(num_x,1,i-1)+273)^2+(Tem_S+273)^2)*((Tem_Mic(num_x,1,i-1)+273)+(Tem_S+273))*(Tem_S-Tem_Mic(num_x,1,i-1))*X_Mic);%边界点B点Tem_Mic(1,num_y,i)=Tem_Mic(1,num_y,i-1)+2*Tim_Mic/(D(1,num_y,i-1)*C(1,num_y,i-1)*X_Mic^2)*(K(1,num_y,i-1)*(Tem_Mic(2,num_y,i-1)+Tem_Mic(1,num_y-1,i-1)-2*Tem_Mic(1,num_y,i-1))+Q_air*((Tem_Mic(1,num_y,i-1)+273)^2+(Tem_S+273)^2)*((Tem_Mic(1,num_y,i-1)+273)+(Tem_S+273))*(Tem_S-Tem_Mic(1,num_y,i-1))*X_Mic);Tem_Surface(i)=Tem_Mic(1,num_y,i);%钢坯外部角部C点Tem_Mic(1,1,i)=Tem_Mic(1,1,i-1)+4*Tim_Mic/(D(1,1,i-1)*C(1,1,i-1)*X_Mic^2)*(1/2*K(1,1,i-1)*(Tem_Mic(2,1,i-1)+Tem_Mic(1,2,i-1)-2*Tem_Mic(1,1,i-1))+Q_air*((Tem_Mic(1,1,i-1)+273)^2+(Tem_S+273)^2)*((Tem_Mic(1,1,i-1)+273)+(Tem_S+273))*(Tem_S-Tem_Mic(1,1,i-1))*X_Mic); for j=2:num_y-1%OA边Tem_Mic(num_x,j,i)=Tem_Mic(num_x,j,i-1)+Tim_Mic/(D(num_x,j,i-1)*C(num_x,j,i-1)*X_Mic^2)*K(num_x,j,i-1)*(2*Tem_Mic(num_x-1,j,i-1)+Tem_Mic(num_x,j+1,i-1)+Tem_Mic(num_x,j-1,i-1)-4*Tem_Mic(num_x,j,i-1));%钢坯外部CB边Tem_Mic(1,j,i)=Tem_Mic(1,j,i-1)+2*Tim_Mic/(D(1,j,i-1)*C(1,j,i-1)*X_Mic^2)*(1/2*K(1,j,i-1)*(2*Tem_Mic(2,j,i-1)+Tem_Mic(1,j+1,i-1)+Tem_Mic(1,j-1,i-1)-4*Tem_Mic(1,j,i-1))+Q_air*((Tem_Mic(1,j,i-1)+273)^2+(Tem_S+273)^2)*((Tem_Mic(1,j,i-1)+273)+(Tem_S+273))*(Tem_S-Tem_Mic(1,j,i-1))*X_Mic);endfor j=2:num_x-1%OB边Tem_Mic(j,num_y,i)=Tem_Mic(j,num_y,i-1)+Tim_Mic/(D(j,num_y,i-1)*C(j,num_y,i-1)*X_Mic^2)*K(j,num_y,i-1)*(Tem_Mic(j+1,num_y,i-1)+Tem_Mic(j-1,num_y,i-1)+2*Tem_Mic(j,num_y-1,i-1)-4*Tem_Mic(j,num_y,i-1)) ;%钢坯外部CA边Tem_Mic(j,1,i)=Tem_Mic(j,1,i-1)+2*Tim_Mic/(D(j,1,i-1)*C(j,1,i-1)*X_Mic^2)*(1/2*K(j,1,i-1)*(Tem_Mic(j+1,1,i-1)+Tem_Mic(j-1,1,i-1)+2*Tem_Mic(j,2,i-1)-4*Tem_Mic(j,1,i-1))+Q_air*((Tem_Mic(j,1,i-1)+273)^2+(Tem_S+273)^2)*((Tem_Mic(j,1,i-1)+273)+(Tem_S+273))*(Tem_S-Tem_Mic(j,1,i-1))*X_Mic);endfor j=2:num_x-1for k=2:num_y-1%内部节点Tem_Mic(j,k,i)=Tem_Mic(j,k,i-1)+Tim_Mic/(D(j,k,i-1)*C(j,k,i-1)*X_Mic^2)*(K(j,k,i-1)*(Tem_Mic(j+1,k,i-1)+Tem_Mic(j-1,k,i-1)+Tem_Mic(j,k+1,i-1)+Tem_Mic(j,k-1,i-1)-4*Tem_Mic(j,k,i-1)));endend
end%*******************************************计算结果******************************************%---------------------------------------表面中心角部点温度——————————————————————%
t=0:Tim_Mic*Speed:(time_air-1)*Tim_Mic*Speed;
for i=1:length(Tem_Mic(1,1,:))Tcorner(i) = Tem_Mic(1,1,i);
endfigure(10);
str0 = '中心温度';
str1 = '表面温度';
str2 = '角部温度';plot(t,Tem_Surface,'r');axis([0 18 600 1600]);text(9,Tem_Surface(1100),str0)
hold on
plot(t,Tem_Center,'g');axis([0 18 600 1600]);text(9,Tem_Center(1100),str1)
hold on
plot(t,Tcorner,'b');axis([0 18 600 1600]);text(9,Tcorner(1100),str2)
xlabel('距离弯月面 m');ylabel('温度 ℃');
title('铸坯表面温度、中心温度、角部温度图')%---------------------------------------固相分数—————————————————————————%
for i=1:time_airfor j=1:num_yif (Tem_Mic(num_x,j,i)>Ts&&Tem_Mic(num_x,j,i)<Tl)Solid_frac(i,j)=1-(Tem_Mic(num_x,j,i)-Ts)/(Tl-Ts);else if (Tem_Mic(num_x,j,i)>=Tl)Solid_frac(i,j)=0;elseSolid_frac(i,j)=1;   endendend
end
x=0:Tim_Mic*Speed:(time_air-1)*Tim_Mic*Speed;
y=0:Y_Mic:(num_y-1)*Y_Mic;
%figure(2);pcolor(x,y,Solid_frac');shading interp;xlabel('距离弯月面');ylabel('固相分率');colorbar;%---------------------------------------坯壳厚度—————————————————————————%
for i=1:time_air
for j=1:num_yif (Tem_Mic(num_x,j,i)>Ts)Thick(i)=(j-1)*X_Mic;break;else Thick(i)=j*X_Mic;end
end
%Thick(i)=(num_y-1)*X_Mic;
end
% figure(3);plot(t,Thick);xlabel('距离弯月面');ylabel('坯壳厚度 mm'); %凝固坯壳figure(11);
plot(t,heat_transfer)
xlabel('距离弯月面 m');ylabel('传热系数 W/(m^2*K)');

这篇关于连铸有限差分法传热数值模拟的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/290391

相关文章

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

usaco 1.2 Transformations(模拟)

我的做法就是一个一个情况枚举出来 注意计算公式: ( 变换后的矩阵记为C) 顺时针旋转90°:C[i] [j]=A[n-j-1] [i] (旋转180°和270° 可以多转几个九十度来推) 对称:C[i] [n-j-1]=A[i] [j] 代码有点长 。。。 /*ID: who jayLANG: C++TASK: transform*/#include<

hdu4431麻将模拟

给13张牌。问增加哪些牌可以胡牌。 胡牌有以下几种情况: 1、一个对子 + 4组 3个相同的牌或者顺子。 2、7个不同的对子。 3、13幺 贪心的思想: 对于某张牌>=3个,先减去3个相同,再组合顺子。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOExcepti

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟)

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟) 题目描述 给定一个链表,链表中的每个节点代表一个整数。链表中的整数由 0 分隔开,表示不同的区间。链表的开始和结束节点的值都为 0。任务是将每两个相邻的 0 之间的所有节点合并成一个节点,新节点的值为原区间内所有节点值的和。合并后,需要移除所有的 0,并返回修改后的链表头节点。 思路分析 初始化:创建一个虚拟头节点

每日一题|牛客竞赛|四舍五入|字符串+贪心+模拟

每日一题|四舍五入 四舍五入 心有猛虎,细嗅蔷薇。你好朋友,这里是锅巴的C\C++学习笔记,常言道,不积跬步无以至千里,希望有朝一日我们积累的滴水可以击穿顽石。 四舍五入 题目: 牛牛发明了一种新的四舍五入应用于整数,对个位四舍五入,规则如下 12345->12350 12399->12400 输入描述: 输入一个整数n(0<=n<=109 ) 输出描述: 输出一个整数

【算法专场】模拟(下)

目录 前言 38. 外观数列 算法分析 算法思路 算法代码 1419. 数青蛙 算法分析 算法思路 算法代码  2671. 频率跟踪器 算法分析 算法思路 算法代码 前言 在前面我们已经讲解了什么是模拟算法,这篇主要是讲解在leetcode上遇到的一些模拟题目~ 38. 外观数列 算法分析 这道题其实就是要将连续且相同的字符替换成字符重复的次数+

模拟实现vector中的常见接口

insert void insert(iterator pos, const T& x){if (_finish == _endofstorage){int n = pos - _start;size_t newcapacity = capacity() == 0 ? 2 : capacity() * 2;reserve(newcapacity);pos = _start + n;//防止迭代

PHP实现二叉树遍历(非递归方式,栈模拟实现)

二叉树定义是这样的:一棵非空的二叉树由根结点及左、右子树这三个基本部分组成,根据节点的访问位置不同有三种遍历方式: ① NLR:前序遍历(PreorderTraversal亦称(先序遍历)) ——访问结点的操作发生在遍历其左右子树之前。 ② LNR:中序遍历(InorderTraversal) ——访问结点的操作发生在遍历其左右子树之中(间)。 ③ LRN:后序遍历(PostorderT

1 模拟——67. 二进制求和

1 模拟 67. 二进制求和 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 示例 1:输入:a = "11", b = "1"输出:"100"示例 2:输入:a = "1010", b = "1011"输出:"10101" 算法设计 可以从低位到高位(从后向前)计算,用一个变量carry记录进位,如果有字符没处理完或者有进位,则循环处理。两个字符串对

AMAZING AUCTION(简单模拟)

AMAZING AUCTION 时间限制: 3000 ms  |  内存限制: 65535 KB 难度:4 描述 Recently the auction house hasintroduced a new type of auction, the lowest price auction. In this new system,people compete for the lo