当前位置: 首页 > news >正文

信用评价研究MATLAB仿真代码

信用评价是各种店铺卖家分析买家信用行为的重要内容, 本文给出随机仿真代码模拟实际交易过程的信用评价. 主要研究内容有:

(1)研究最大交易额和信用度的关系

(2)研究买家不评价率对信用度影响

(3)研究交易次数对信用度影响

MATLAB程序如下:

主程序main.m

%% 
clc;close all;clear all;
sita=0.20; %差距容忍度
beta=0.85; %衰减因子
%% 产生交易信息
k=200;%k=买家人数
timeMin=1;%[timeMin,timeMax]=交易时间范围
timeMax=100;%[timeMin,timeMax]=交易时间范围
TnumberMin=1;%[TnumberMin,TnumberMax]=交易次数范围
TnumberMax=80;%[TnumberMin,TnumberMax]=交易次数范围
moneyMin=20;%[moneyMin,moneyMax]=交易金额范围
moneyMax=1000;%[moneyMin,moneyMax]=交易金额范围
SEvaluategoodMin=0.9;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
SEvaluategoodMax=0.96;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
SEvaluatemidMin=0.98;
SEvaluatemidMax=0.999;
noEvaluateRate=0.2;%noEvaluateRate=买家不评价的概率
BEvaluateMin=0.9;%[BEvaluateMin,BMax]=买家自身的好评率范围
BEvaluateMax=0.99;%[BEvaluateMin,BMax]=买家自身的好评率范围
[TransData,N,LP]=TransInf(k,timeMin,timeMax,TnumberMin,TnumberMax,moneyMin,moneyMax,SEvaluategoodMin,SEvaluategoodMax,...
    SEvaluatemidMin,SEvaluatemidMax,noEvaluateRate,BEvaluateMin,BEvaluateMax);%jisuan
% N=总交易次数
%k=买家人数
%[timeMin,timeMax]=交易时间范围
%[TnumberMin,TnumberMax]=交易次数范围
%[moneyMin,moneyMax]=交易金额范围
%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差,SEvaluategoodMin,SEvaluategoodMax,SEvaluatemidMin,SEvaluatemidMax
%noEvaluateRate=买家不评价的概率
%[BEvaluateMin,BMax]=买家自身的好评率范围

%TransData(i).B=i=第i个买家
%TransData(i).S=卖家,不要了
%TransData(i).T=第i次交易的时间
%TransData(i).M=第i次交易的金额
%TransData(i).R=第i次交易的评价值,好评则为1,中评则为0,差评则为一1
%TransData(i).rou=买家自身的好评率
%LP=评价率

%% 
Pi=zeros(k,1);
for i=1:k
    T=TransData(i).T;
    M=TransData(i).M;
    R=TransData(i).R;
    ysl=(T).*M;
    Pi(i,1)=sum(R.*ysl/sum(ysl));
end

Pmean=mean(Pi);

P=0;
for i=1:k
   rou=TransData(i).rou;
   s01=abs(Pi(i,1)-Pmean);
   if s01<=sita
       fy01=(1-s01)*rou;
   else
       fy01=(1-s01)*rou*beta;
   end
    P=P+Pi(i,1)*fy01;
end
disp('差距容忍度')
sita
disp('衰减因子')
beta
disp('总交易次数')
N
disp('评价率')
LP
disp('卖家的信用度')
P
disp('考虑评价率的卖家的信用度')
Q=P*LP


 

关键函数 交易信息函数TransInf.m

function [TransData,N,LP]=TransInf(k,timeMin,timeMax,TnumberMin,TnumberMax,moneyMin,moneyMax,SEvaluategoodMin,SEvaluategoodMax,...
    SEvaluatemidMin,SEvaluatemidMax,noEvaluateRate,BEvaluateMin,BEvaluateMax)
%% 产生交易信息函数

%k=买家人数
%[timeMin,timeMax]=交易时间范围
%[TnumberMin,TnumberMax]=交易次数范围
%[moneyMin,moneyMax]=交易金额范围
%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差,SEvaluategoodMin,SEvaluategoodMax,SEvaluatemidMin,SEvaluatemidMax
%noEvaluateRate=买家不评价的概率
%[BEvaluateMin,BMax]=买家自身的好评率范围

%% TransData结构体的结果定义
%TransData(i).B=i=第i个买家
%TransData(i).S=卖家,不要了
%TransData(i).T=第i次交易的时间
%TransData(i).M=第i次交易的金额
%TransData(i).R=第i次交易的评价值,好评则为1,中评则为0,差评则为一1
%TransData(i).rou=买家i自身的好评率
% N=总交易次数
%LP=评价率

T01=timeMin:timeMax;
L01=length(T01);
if L01<TnumberMax%
    error('请输入正确的参数,交易时间范围设置过小');
end

noEnumber=0;%
Enumber=0;%
for i=1:k%按买家循环
    %% --记录数据开始-------------
    TransData(i).B=i;
    TransData(i).S=1;
    % 产生交易时间
    index01=randperm(L01);
    state=0;
    iter=0;
    while state==0
        Tnumber=randi([TnumberMin TnumberMax],1,1);%产生交易次数
        if L01>=Tnumber
            time01 =index01(1:Tnumber);
            time=sort(time01);
            break;
        else
            state=0;
            iter=iter+1;
        end
        if iter>=10
            error('请输入正确的参数,交易时间范围设置过小');
        end
    end
    TransData(i).T=time;
    % 产生金额
    money=randi([moneyMin moneyMax],1,Tnumber);%产生交易金额,默认为整数
    TransData(i).M=money;%第i次交易的金额
    
    %% 好评率计算
    for j=1:Tnumber
        rnoE=rand;
        if rnoE>noEvaluateRate
            % 产生好评率
            rgood = SEvaluategoodMin + (SEvaluategoodMax-SEvaluategoodMin).*rand(1,1);%介于SEvaluategoodMax和SEvaluategoodMin之间
            % 产生中评率
            rmidle = SEvaluatemidMin + (SEvaluatemidMax-SEvaluatemidMin).*rand(1,1);%介于SEvaluatemidMi,nSEvaluatemidMax之间
            if rgood>rmidle
                error('对卖家的好评率范围SEvaluategoodMin和SEvaluategoodMax设置过大或者SEvaluatemidMin和SEvaluatemidMax过小,请重新设置');
            end
            r001=rand;%
            if (r001>=0)&&(r001<rgood);
                R01=1;
            end
            if (r001>=rgood)&&(r001<rmidle);
                R01=0;
            end
            if (r001>=rmidle)&&(r001<1);
                R01=-1;
            end
            Enumber=Enumber+1;%记录评价的交易
        else
            R01=0;
            noEnumber=noEnumber+1;%记录不评价的交易
        end
   
        if j==1%第一个交易直接赋值
            TransData(i).R=R01;
        else%其他交易放到后面
            TransData(i).R=[TransData(i).R, R01];
        end
    end
    TransData(i).rou=BEvaluateMin + (BEvaluateMax-BEvaluateMin).*rand(1,1);%
    %% --记录数据结束-------------
end
N=noEnumber+Enumber;
LP=Enumber/N;

main2.m 是研究最大交易额和信用度的关系

%% 研究最大交易额和信用度的关系
clc;close all;clear all;
sita=0.20; %差距容忍度
beta=0.85; %衰减因子
%% 产生交易信息
K=100:100:1000;
G=length(K);
Pcell=zeros(G,1);
Qcell=zeros(G,1);
for g=1:G
    k=200;%k=买家人数
    timeMin=1;%[timeMin,timeMax]=交易时间范围
    timeMax=100;%[timeMin,timeMax]=交易时间范围
    TnumberMin=1;%[TnumberMin,TnumberMax]=交易次数范围
    TnumberMax=80;%[TnumberMin,TnumberMax]=交易次数范围
    moneyMin=20;%[moneyMin,moneyMax]=交易金额范围
    moneyMax=K(g);%[moneyMin,moneyMax]=交易金额范围
    SEvaluategoodMin=0.9;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
    SEvaluategoodMax=0.96;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
    SEvaluatemidMin=0.98;
    SEvaluatemidMax=0.999;
    noEvaluateRate=0.2;%noEvaluateRate=买家不评价的概率
    BEvaluateMin=0.9;%[BEvaluateMin,BMax]=买家自身的好评率范围
    BEvaluateMax=0.99;%[BEvaluateMin,BMax]=买家自身的好评率范围
    [TransData,N,LP]=TransInf(k,timeMin,timeMax,TnumberMin,TnumberMax,moneyMin,moneyMax,SEvaluategoodMin,SEvaluategoodMax,...
        SEvaluatemidMin,SEvaluatemidMax,noEvaluateRate,BEvaluateMin,BEvaluateMax);%jisuan
    % N=总交易次数
    %k=买家人数
    %[timeMin,timeMax]=交易时间范围
    %[TnumberMin,TnumberMax]=交易次数范围
    %[moneyMin,moneyMax]=交易金额范围
    %[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差,SEvaluategoodMin,SEvaluategoodMax,SEvaluatemidMin,SEvaluatemidMax
    %noEvaluateRate=买家不评价的概率
    %[BEvaluateMin,BMax]=买家自身的好评率范围
    
    %TransData(i).B=i=第i个买家
    %TransData(i).S=卖家,不要了
    %TransData(i).T=第i次交易的时间
    %TransData(i).M=第i次交易的金额
    %TransData(i).R=第i次交易的评价值,好评则为1,中评则为0,差评则为一1
    %TransData(i).rou=买家自身的好评率
    %LP=评价率
    
    %%
    Pi=zeros(k,1);
    for i=1:k
        T=TransData(i).T;
        M=TransData(i).M;
        R=TransData(i).R;
        ysl=(T).*M;
        Pi(i,1)=sum(R.*ysl/sum(ysl));
    end
    
    Pmean=mean(Pi);
    
    P=0;
    for i=1:k
        rou=TransData(i).rou;
        s01=abs(Pi(i,1)-Pmean);
        if s01<=sita
            fy01=(1-s01)*rou;
        else
            fy01=(1-s01)*rou*beta;
        end
        P=P+Pi(i,1)*fy01;
    end
    Q=P*LP;
    Pcell(g,1)=P;
    Qcell(g,1)=Q;
end
figure;
plot(K,Pcell,'b-',K,Qcell,'r--');
legend('信用度','考虑评价率的信用度');
xlabel('交易金额上限');
ylabel('信用度');
title('信用度和交易金额上限关系曲线');


disp('差距容忍度')
sita
disp('衰减因子')
beta
disp('总交易次数')
N
disp('评价率')
LP
disp('卖家的信用度')
P
disp('考虑评价率的卖家的信用度')
Q


 

main3.m 研究买家不评价率对信用度影响

%% 研究买家不评价率对信用度影响
clc;close all;clear all;
sita=0.20; %差距容忍度
beta=0.85; %衰减因子
%% 产生交易信息
K=0.1:0.01:0.3;
G=length(K);
Pcell=zeros(G,1);
Qcell=zeros(G,1);
for g=1:G
    k=200;%k=买家人数
    timeMin=1;%[timeMin,timeMax]=交易时间范围
    timeMax=100;%[timeMin,timeMax]=交易时间范围
    TnumberMin=1;%[TnumberMin,TnumberMax]=交易次数范围
    TnumberMax=80;%[TnumberMin,TnumberMax]=交易次数范围
    moneyMin=20;%[moneyMin,moneyMax]=交易金额范围
    moneyMax=1000;%[moneyMin,moneyMax]=交易金额范围
    SEvaluategoodMin=0.9;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
    SEvaluategoodMax=0.96;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
    SEvaluatemidMin=0.98;
    SEvaluatemidMax=0.999;
    noEvaluateRate=K(g);%noEvaluateRate=买家不评价的概率
    BEvaluateMin=0.9;%[BEvaluateMin,BMax]=买家自身的好评率范围
    BEvaluateMax=0.99;%[BEvaluateMin,BMax]=买家自身的好评率范围
    [TransData,N,LP]=TransInf(k,timeMin,timeMax,TnumberMin,TnumberMax,moneyMin,moneyMax,SEvaluategoodMin,SEvaluategoodMax,...
        SEvaluatemidMin,SEvaluatemidMax,noEvaluateRate,BEvaluateMin,BEvaluateMax);%jisuan
    % N=总交易次数
    %k=买家人数
    %[timeMin,timeMax]=交易时间范围
    %[TnumberMin,TnumberMax]=交易次数范围
    %[moneyMin,moneyMax]=交易金额范围
    %[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差,SEvaluategoodMin,SEvaluategoodMax,SEvaluatemidMin,SEvaluatemidMax
    %noEvaluateRate=买家不评价的概率
    %[BEvaluateMin,BMax]=买家自身的好评率范围
    
    %TransData(i).B=i=第i个买家
    %TransData(i).S=卖家,不要了
    %TransData(i).T=第i次交易的时间
    %TransData(i).M=第i次交易的金额
    %TransData(i).R=第i次交易的评价值,好评则为1,中评则为0,差评则为一1
    %TransData(i).rou=买家自身的好评率
    %LP=评价率
    
    %%
    Pi=zeros(k,1);
    for i=1:k
        T=TransData(i).T;
        M=TransData(i).M;
        R=TransData(i).R;
        ysl=(T).*M;
        Pi(i,1)=sum(R.*ysl/sum(ysl));
    end
    
    Pmean=mean(Pi);
    
    P=0;
    for i=1:k
        rou=TransData(i).rou;
        s01=abs(Pi(i,1)-Pmean);
        if s01<=sita
            fy01=(1-s01)*rou;
        else
            fy01=(1-s01)*rou*beta;
        end
        P=P+Pi(i,1)*fy01;
    end
    Q=P*LP;
    Pcell(g,1)=P;
    Qcell(g,1)=Q;
end
figure;
plot(K,Pcell,'b-',K,Qcell,'r--');
legend('信用度','考虑评价率的信用度');
xlabel('买家不评价率');
ylabel('信用度');
title('信用度和买家不评价率关系曲线');


disp('差距容忍度')
sita
disp('衰减因子')
beta
disp('总交易次数')
N
disp('评价率')
LP
disp('卖家的信用度')
P
disp('考虑评价率的卖家的信用度')
Q


 

main4.m 研究交易次数对信用度影响

%% 研究交易次数对信用度影响
clc;close all;clear all;
sita=0.20; %差距容忍度
beta=0.85; %衰减因子
%% 产生交易信息
K=10:5:80;
G=length(K);
Pcell=zeros(G,1);
Qcell=zeros(G,1);
for g=1:G
    k=200;%k=买家人数
    timeMin=1;%[timeMin,timeMax]=交易时间范围
    timeMax=100;%[timeMin,timeMax]=交易时间范围
    TnumberMin=1;%[TnumberMin,TnumberMax]=交易次数范围
    TnumberMax=K(g);%[TnumberMin,TnumberMax]=交易次数范围
    moneyMin=20;%[moneyMin,moneyMax]=交易金额范围
    moneyMax=1000;%[moneyMin,moneyMax]=交易金额范围
    SEvaluategoodMin=0.9;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
    SEvaluategoodMax=0.96;%[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差
    SEvaluatemidMin=0.98;
    SEvaluatemidMax=0.999;
    noEvaluateRate=0.2;%noEvaluateRate=买家不评价的概率
    BEvaluateMin=0.9;%[BEvaluateMin,BMax]=买家自身的好评率范围
    BEvaluateMax=0.99;%[BEvaluateMin,BMax]=买家自身的好评率范围
    [TransData,N,LP]=TransInf(k,timeMin,timeMax,TnumberMin,TnumberMax,moneyMin,moneyMax,SEvaluategoodMin,SEvaluategoodMax,...
        SEvaluatemidMin,SEvaluatemidMax,noEvaluateRate,BEvaluateMin,BEvaluateMax);%jisuan
    % N=总交易次数
    %k=买家人数
    %[timeMin,timeMax]=交易时间范围
    %[TnumberMin,TnumberMax]=交易次数范围
    %[moneyMin,moneyMax]=交易金额范围
    %[SEvaluateMin,SEvaluateMax]=对卖家的好评率范围[0.7,0.9],0-0.7为好评,0.7-0.9为中,0.9-1为差,SEvaluategoodMin,SEvaluategoodMax,SEvaluatemidMin,SEvaluatemidMax
    %noEvaluateRate=买家不评价的概率
    %[BEvaluateMin,BMax]=买家自身的好评率范围
    
    %TransData(i).B=i=第i个买家
    %TransData(i).S=卖家,不要了
    %TransData(i).T=第i次交易的时间
    %TransData(i).M=第i次交易的金额
    %TransData(i).R=第i次交易的评价值,好评则为1,中评则为0,差评则为一1
    %TransData(i).rou=买家自身的好评率
    %LP=评价率
    
    %%
    Pi=zeros(k,1);
    for i=1:k
        T=TransData(i).T;
        M=TransData(i).M;
        R=TransData(i).R;
        ysl=(T).*M;
        Pi(i,1)=sum(R.*ysl/sum(ysl));
    end
    
    Pmean=mean(Pi);
    
    P=0;
    for i=1:k
        rou=TransData(i).rou;
        s01=abs(Pi(i,1)-Pmean);
        if s01<=sita
            fy01=(1-s01)*rou;
        else
            fy01=(1-s01)*rou*beta;
        end
        P=P+Pi(i,1)*fy01;
    end
    Q=P*LP;
    Pcell(g,1)=P;
    Qcell(g,1)=Q;
end
figure;
plot(K,Pcell,'b-',K,Qcell,'r--');
legend('信用度','考虑评价率的信用度');
xlabel('交易次数');
ylabel('信用度');
title('信用度和交易次数关系曲线');


disp('差距容忍度')
sita
disp('衰减因子')
beta
disp('总交易次数')
N
disp('评价率')
LP
disp('卖家的信用度')
P
disp('考虑评价率的卖家的信用度')
Q

程序结果:

差距容忍度

sita =

    0.2000

衰减因子

beta =

    0.8500

总交易次数

N =

        7677

评价率

LP =

    0.8032

卖家的信用度

P =

  126.8858

考虑评价率的卖家的信用度

Q =

  101.9120

>> 

需要讨论的可以加Q1579325979讨论

相关文章:

信用评价研究MATLAB仿真代码

信用评价是各种店铺卖家分析买家信用行为的重要内容, 本文给出随机仿真代码模拟实际交易过程的信用评价. 主要研究内容有: (1)研究最大交易额和信用度的关系 (2)研究买家不评价率对信用度影响 (3)研究交易次数对信用度影响 MATLAB程序如下: 主程序main.m %% clc;close a…...

网络安全产品之认识防毒墙

在互联网发展的初期&#xff0c;网络结构相对简单&#xff0c;病毒通常利用操作系统和软件程序的漏洞发起攻击&#xff0c;厂商们针对这些漏洞发布补丁程序。然而&#xff0c;并不是所有终端都能及时更新这些补丁&#xff0c;随着网络安全威胁的不断升级和互联网的普及&#xf…...

android 防抖工具类,经纬度检查工具类

一&#xff1a;点击事件防抖工具类&#xff1a; public abstract class ThrottleClickListener implements View.OnClickListener {private long clickLastTimeKey 0;private final long thresholdMillis 500;//millisecondsOverridepublic void onClick(View v) {long curr…...

PgSQL - 17新特性 - 块级别增量备份

PgSQL - 17新特性 - 块级别增量备份 PgSQL可通过pg_basebackup进行全量备份。在构建复制关系时&#xff0c;创建备机时需要通过pg_basebackup全量拉取一个备份&#xff0c;形成一个mirror。但很多场景下&#xff0c;我们往往不需要进行全量备份/恢复&#xff0c;数据量特别大的…...

Vue3setup()的非语法糖和语法糖的用法

1、setup()的语法糖的用法 script标签上写setup属性&#xff0c;不需要export default {} setup() 都可以省 创建每个属性或方法时也不需要return 导入某个组件时也不需要注册 <script setup > // script标签上写setup属性&#xff0c;不需要export default {} set…...

HTTP状态信息

1xx: 信息 消息:描述:100 Continue服务器仅接收到部分请求&#xff0c;但是一旦服务器并没有拒绝该请求&#xff0c;客户端应该继续发送其余的请求。101 Switching Protocols服务器转换协议&#xff1a;服务器将遵从客户的请求转换到另外一种协议。 2xx: 成功 消息:描述:200…...

CSS之边框样式

让我为大家介绍一下边框样式吧&#xff01;如果大家想更进一步了解边框的使用&#xff0c;可以阅读这一篇文章&#xff1a;CSS边框border 属性描述none没有边框,即忽略所有边框的宽度(默认值)solid边框为单实线dashed边框为虚线dotted边框为点线double边框为双实线 代码演示&…...

k8s-helm

Helm: 什么是helm,在没有这个heml之前&#xff0c;deployment service ingress的作用就是通过打包的方式&#xff0c;把deployment service ingress这些打包在一块&#xff0c;一键式的部署服务&#xff0c;类似于yum 官方提供的一个类似于安全仓库的功能&#xff0c;可以实现…...

黑马程序员JavaWeb开发|Maven高级

一、分模块设计与开发 分模块设计&#xff1a; 将项目按照功能拆分成若干个子模块&#xff0c;方便项目的管理维护、扩展&#xff0c;也方便模块间的相互调用&#xff0c;资源共享。 注意&#xff1a;分模块开发需要先对模块功能进行设计&#xff0c;再进行编码。不会先将工…...

【经验分享】MAC系统安装R和Rstudio(保姆级教程)安装下载只需5min

最近换了Macbook的Air电脑&#xff0c;自然要换很多新软件啦&#xff0c;首先需要安装的就是R和Rstudio啦&#xff0c;网上的教程很多很繁琐&#xff0c;为此我特意总结了最简单实用的安装方式: 一、先R后Rstudio 二、R下载 下载网址&#xff1a;https://cran.r-project.org …...

探索设计模式的魅力:“感受单例模式的力量与神秘” - 掌握编程的王牌技巧

在软件开发的赛场上&#xff0c;单例模式以其独特的魅力长期占据着重要的地位。作为设计模式中的一员&#xff0c;它在整个软件工程的棋盘上扮演着关键性角色。本文将带你深入探索单例模式的神秘面纱&#xff0c;从历史渊源到现代应用&#xff0c;从基础实现到高级技巧&#xf…...

SpringCloud Aliba-Seata【上】-从入门到学废【7】

目录 &#x1f9c2;.Seata是什么 &#x1f32d;2.Seata术语表 &#x1f953;3.处理过程 &#x1f9c8;4.下载 &#x1f37f;5.修改相关配置 &#x1f95e;6.启动seata 1.Seata是什么 Seata是一款开源的分布式事务解决方案&#xff0c;致力于在微服务架构下提供高性能…...

C# Cad2016二次开发选择csv导入信息(七)

//选择csv导入信息 [CommandMethod("setdata")] //本程序在AutoCAD的快捷命令是"DLLLOAD" public void setdata() {Microsoft.Win32.OpenFileDialog dlg new Microsoft.Win32.OpenFileDialog();dlg.DefaultExt ".csv";// Display OpenFileDial…...

[陇剑杯 2021]日志分析

[陇剑杯 2021]日志分析 题目做法及思路解析&#xff08;个人分享&#xff09; 问一&#xff1a;单位某应用程序被攻击&#xff0c;请分析日志&#xff0c;进行作答&#xff1a; 网络存在源码泄漏&#xff0c;源码文件名是_____________。(请提交带有文件后缀的文件名&…...

Java面试汇总——jvm篇

目录 JVM的组成&#xff1a; 1、JVM 概述(⭐⭐⭐⭐) 1.1 JVM是什么&#xff1f; 1.2 JVM由哪些部分组成&#xff0c;运行流程是什么&#xff1f; 2、什么是程序计数器&#xff1f;(⭐⭐⭐⭐) 3、介绍一下Java的堆(⭐⭐⭐⭐) 4、虚拟机栈(⭐⭐⭐⭐) 4.1 什么是虚拟机栈&…...

数据结构:完全二叉树(递归实现)

如果完全二叉树的深度为h&#xff0c;那么除了第h层外&#xff0c;其他层的节点个数都是满的&#xff0c;第h层的节点都靠左排列。 完全二叉树的编号方法是从上到下&#xff0c;从左到右&#xff0c;根节点为1号节点&#xff0c;设完全二叉树的节点数为sum&#xff0c;某节点编…...

RK3568 移植Ubuntu

使用ubuntu-base构建根文件系统 1、到ubuntu官网获取 ubuntu-base-18.04.5-base-arm64.tar.gz Ubuntu Base 18.04.5 LTS (Bionic Beaver) 2、将获取的文件拷贝到ubuntu虚拟机,新建目录,并解压 mkdir ubuntu_rootfs sudo tar -xpf u...

C++大学教程(第九版)6.34猜数字游戏 6.35 修改的猜数字游戏

文章目录 6.34题目代码运行截图6.35题目代码运行截图 6.34题目 猜数字游戏)编写一个程序&#xff0c;可以玩“猜数字”的游戏。具体描述如下:程序在1~1000之间的整数中随机选择需要被猜的数&#xff0c;然后显示: 代码 #include <iostream> #include <cstdlib>…...

【立创EDA-PCB设计基础】5.布线设计规则设置

前言&#xff1a;本文详解布线前的设计规则设置。经过本专栏中的【立创EDA-PCB设计基础】前几节已经完成了布局&#xff0c;接下来开始进行布线&#xff0c;在布线之前&#xff0c;要设置设计规则。 目录 1.间距设置 1.1 安全间距设置 1.2 其它间距设置 2.物理设置 2.1 导…...

ElementUI简介以及相关操作

ElementUI是一套基于Vue.js的桌面端组件库&#xff0c;提供了丰富的组件帮助开发人员快速构建功能强大、风格统一的页面。以下是ElementUI的简介以及相关操作&#xff1a; 简介&#xff1a;ElementUI是一套为开发者、设计师和产品经理准备的基于Vue 2.0的桌面端组件库&#xff…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时&#xff0c;与数据库的交互无疑是核心环节。虽然传统的数据库操作方式&#xff08;如直接编写SQL语句与psycopg2交互&#xff09;赋予了我们精细的控制权&#xff0c;但在面对日益复杂的业务逻辑和快速迭代的需求时&#xff0c;这种方式的开发效率和可…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 题目描述解题思路Java代码 题目描述 题目链接&#xff1a;LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...