精华内容
下载资源
问答
  • 2020-09-09 22:07:23
    1. 将物理网络划分为若干个子网(单位内部才可划分子网)
    2. 从主机号借用若干个位作为子网号,而主机号也就相应减少了若干位ip地址{<网络号>,<子网号>,<主机号>}
    3. 对于其他网络发送给本单位某个主机ip数据报
      (1)根据ip数据报的目的网络 找到 连接在本单位网络上的路由器
      (2)收到ip数据报的路由器,按 目的网络号和子网号 找到目的子网
      (3)最后将ip数据报交付主机
    更多相关内容
  • ERP基本思路ERP基本思路
  • 遗传算法基本思路.docx遗传算法基本思路.docx遗传算法基本思路.docx遗传算法基本思路.docx遗传算法基本思路.docx遗传算法基本思路.docx遗传算法基本思路.docx遗传算法基本思路.docx
  • 遗传算法基本思路.pdf

    2022-06-20 21:14:29
    遗传算法基本思路.pdf遗传算法基本思路.pdf遗传算法基本思路.pdf遗传算法基本思路.pdf遗传算法基本思路.pdf遗传算法基本思路.pdf遗传算法基本思路.pdf遗传算法基本思路.pdf
  • python爬虫基本思路

    千次阅读 2022-05-02 23:30:04
    python爬虫基本思路 一、明确需求 首先我们要明白我们爬取的具体是什么内容,比如爬取文章标题,爬取图片,爬取实时新闻 二、建立request请求 1.使用的是哪一种请求方式,get post等 2.获取请求URL,确定请求连接 3....

    python爬虫基本思路

    一、明确需求
    首先我们要明白我们爬取的具体是什么内容,比如爬取文章标题,爬取图片,爬取实时新闻
    二、建立request请求
    1.使用的是哪一种请求方式,get post等
    2.获取请求URL,确定请求连接
    3.拼接头部信息,User-Agent,Host,Cookies等
    4.设置请求体,即请求时额外携带的数据,比如表单提交时的表单数据。
    三、获取数据
    获取请求响应状态,比如200、404、301、502等;
    四、解析数据

    1、使用json解析数据;

    2、使用正则表达式提取数据;

    3、使用BeautifulSoup库来处理数据;

    4、使用PyQuery来解析数据;

    五、存储数据

    1、可使用纯文本、json、xml等存储;

    2、使用关系型数据库存储,如mysql、oracle等;

    3、使用非关系型数据库存储,如mongodb、redis等;

    4、图片、视频等可直接保存。

    展开全文
  • 建筑工程项目管理基本思路----新思路新理念.pptx
  • 快速排序两种最基本思路

    千次阅读 2020-05-01 20:02:14
    基本思想 快速排序是对冒泡排序的一种改进 基本思想: 通过一趟排序将要排序的数据分割成独立的两部分。 其中一部分的所有数据都比另外一部分的所有数据都要小。 然后再按此方法对这两部分数据分别进行快速排序,...

    基本思想

    快速排序是对冒泡排序的一种改进
    基本思想:

    1. 通过一趟排序将要排序的数据分割成独立的两部分。
    2. 其中一部分的所有数据都比另外一部分的所有数据都要小。
    3. 然后再按此方法对这两部分数据分别进行快速排序,整个排序可以递归进行,一次整个数据变成有序序列
      注意:
      其主要运用了分治的思想
      有不同种方法将该段数据分成两段(小于等于key的一段在一边,大于key的一段在一边,key的数据在这两段段中间)
      快排一次只能把一个数排好,放在正确的位置。
      key可以选最左边的数,此时先移动右边的数j,
      key也可以选最右边的数,此时先移动左边的数i
      快速排序主要有两种方法,一种是标准算法,另一种是两头交换法,基本思想是一样的,但有些细节上有所不同。

    方法一:两头交换法

    过程图解:

    首先我们选取最左边的数为标准数key,再设最左边的数为i,设最右边的数为j.注意此时从右边开始移动。
    key = 6
    在这里插入图片描述
    j从右向左移动直到找到比key小的那个数停下
    i从左往右移动直到找到比key大的数停下。
    交换它们两个。
    在这里插入图片描述
    6 1 2 5 9 3 4 7 10 8

    ij
    61259347108

    key = 6
    继续进行上面的操作,
    j从右向左移动直到找到比key小的那个数停下
    i从左往右移动直到找到比key大的数停下。
    然后交换它们两个。
    在这里插入图片描述
    6 1 2 5 4 3 9 7 10 8

    ij
    61254397108

    最终j找到比key小的数停下
    i继续向前寻找时与j相遇。
    此时交换这个数与key的位置。
    在这里插入图片描述
    3 1 2 5 4 6 9 7 10 8
    可以看出来key此时所处的位置,前面都是比key小的,后面都是比key大的。所以这里就是key的位置
    然后分别对6前半段和后半段进行上面的排列
    在这里插入图片描述
    最终排序完成。

    代码实现:

    int a[100];
    void quicksort(int left, int right);
    int main() {
        int n;
        scanf("%d",&n);
        for(int i = 0; i < n; i++) {
            scanf("%d ",&a[i]);
        }
        quicksort(0, n-1);
        for(int i = 0; i < n; i++) {
            printf("%d ",a[i]);
        }
        return 0;
    }
    void quicksort(int left, int right) {
        int i, j, t;
        
        if(left > right) {
            return ;
        }
        int key = a[left];
        i = left;
        j = right;
        while ( i != j) {
            while (a[j] >= key && i < j) {
                j--;
            }
            while (a[i] <= key && i < j) {
                i++;
            }
            if(i < j) {
                t = a[i];
                a[i] = a[j];
                a[j] = t;
            }
        }
        
        a[left] = a[i];
        a[i] = key;
        quicksort(left, i-1);
        quicksort(i+1, right);
    }
    

    方法二:标准算法(填坑法)

    优化不必要的交换,直接进行替换操作,不进行交换。
    key=23
    第一步,i=0, j=8.选取基准数key为23.
    可以想象成i = 0那个位置有一个坑,标记为*
    j开始向左移动。

    012345678
    2315378922143956
    i=0<-- j=8
    *

    第二步:
    从j向左寻找比key小的数,找到后填入坑中,此时j所在的位置就变成坑了。
    i开始向右移动

    012345678
    915378922143956
    i=0 -->j=7
    *

    下一步:
    i从左往右移动,寻找比key大的数,找到后填入坑中,并且i此时所在的位置就变成了坑。
    j开始向右移动。

    012345678
    9153789221433756
    i=2<-- j=7
    *

    下一步:
    j从右往左移动,寻找比key小的数,找到后填入坑中,并且j此时所在的位置就变成了坑。
    i开始向右移动。

    012345678
    9152189221433756
    i=2 -->j=5
    *

    下一步:
    i从左往右移动,寻找比key大的数,找到后填入坑中,并且i此时所在的位置就变成了坑。
    j开始向左移动。

    012345678
    9152189289433756
    i=3<-- j=5
    *

    下一步:
    j从右往左移动,寻找比key小的数,找到后填入坑中,并且j此时所在的位置就变成了坑。
    i开始向左移动。

    012345678
    915212289433756
    i=3 -->j=4
    *

    i向右移动,此时与j相遇 i = j = 4.

    012345678
    915212289433756
    i = j=4
    *
    012345678
    9152122389433756
    key
    *

    此时key 23所在的位置就是它在排列中应该在的位置。前面的数都是比他小的数,后面都是比它大的数。
    最后我们对以上的操作进行分治,即分别对23前面的数列和后面的数列进行上面的操作排序。
    在这里插入图片描述

    最终排序完成。

    代码实现:

    #include<stdio.h>
    int a[100];
    void quicksort(int a[], int low, int high) {
        int i = low;
        int j = high;
        int key = a[low];
        while (i < j) {
            while (i < j && a[j] >= key) {
                j--;
            }
            if( i < j) {
                a[i] = a[j];
            }
            while (i < j && a[i] < key) {
                i++;
            }
            if( i < j) {
                a[j] = a[i];
            }
        }
        a[i] = key;
        if(low < i) quicksort(a, low, i-1);
        if(high >i) quicksort(a, i+1, high);
    }
    
    int main() {
        int n;
        scanf("%d",&n);
        for(int i = 0; i < n; i++) {
            scanf("%d ",&a[i]);
        }
        quicksort(a, 0,  n-1);
        for(int i = 0; i < n; i++) {
            printf("%d ",a[i]);
        }
        return 0;
    }
    
    展开全文
  • 基于matlab的目标检测的基本思路

    千次阅读 2020-08-22 10:24:06
    图像处理之目标检测目标检测的基本思路遇到的问题鹿人鹰花狗总结附录 目标检测的基本思路 对于轮廓清晰的图片,可以先检测出他的轮廓,此时会有背景的轮廓也被添加进来,可以通过先填洞,再腐蚀和膨胀来消除多余的...

    目标检测的基本思路

    对于轮廓清晰的图片,可以先检测出他的轮廓,此时会有背景的轮廓也被添加进来,可以通过先填洞,再腐蚀和膨胀来消除多余的边缘来找到目标的轮廓。对于轮廓不清晰或者背景很复杂的图片,可以通过图像二值化,用特定的阈值将需要的目标筛选出来,或是将图像分块处理,再进行形态学操作使轮廓更为具体。

    遇到的问题

    鹿

    对于彩色图像想要提取某一特定颜色阈值比较难选取,图像中目标的颜色不是唯一的,有彩色和黑色和白色,可以通过将rgb空间转换为ycbcr空间,在ycbcr上分别选取阈值
    如图
    在这里插入图片描述

    可以大致识别出鹿的轮廓,再将图像进行膨胀腐蚀,消除小的连通域即可获得轮廓
    腐蚀,并选区最大联通域后如图

    有的地方被腐蚀掉了。
    代码如下:

    y_min=0;y_max=256;
    cb_min= 90;cb_max=150 ;
    cr_min=124 ;cr_max= 180;
     
    roi=roicolor(img_ycbcr(:,:,1),y_min,y_max) & roicolor(img_ycbcr(:,:,2),cb_min,cb_max) & roicolor(img_ycbcr(:,:,3),cr_min,cr_max);
    

    先将图像二值化处理后发现图像下半部分有明显的干扰信息,所以决定将图像分成上下两部分来处理,由于下半部分不存在要识别的目标,所以下半部分可以显示原图,上半部分二值化后由于本身就具有很大的差别,可以比较清晰的显示出目标来,如图
    在这里插入图片描述

    后续处理与上图类似
    结果如图
    在这里插入图片描述

    把图片分成两块:

    img=imread('people.jpg');
    img1=imcrop(img,[0,0,400,170]);
    img2=imcrop(img,[0,171,400,304]);
    

    其余正常处理

    这张图目标与背景区别很大,比较好检测
    最开始二值化的时候选好阈值即可,再用canny算子提取边缘
    在这里插入图片描述

    虽然有一条背景的线,但他不是连通域,用imfill填满连通域后再腐蚀即可把这条线消除
    提取边缘后结果如图
    在这里插入图片描述
    在这里插入图片描述

    代码如下:

    img_bw=im2bw(img_gray,0.8);
     
    img_edge=edge(img_bw,'canny');
    %imshow(img_edge);
    dil_filter=strel('square',2);%膨胀一下
    img_edge=imdilate(img_edge,dil_filter);
     
    img_edge=bwperim(img_edge);
    img_full=imfill(img_edge,'holes');
     
     
    ero_filter=strel('square',3);
    img_full=imerode(img_full,ero_filter);
    img_full=bwareaopen(img_full,50);
     
    out_edge=edge(img_full,'canny');
    out_edge=imdilate(out_edge,dil_filter);
    

    花的红色其实可以用rgb中的r或者g来分离,但是也可以直接转换为二值图设定阈值来分离,会有很小的叶子被检测到,腐蚀后会有斑点,只需要消除小的连通域即可。如图
    在这里插入图片描述

    与花类似,第一步用阈值分割即可达到较好的效果
    在这里插入图片描述

    总结

    用阈值法分割可以得到大部分比较好的效果,这个阈值我的理解就是在一张灰度图中,灰度值不变的区域图像的一阶导数为零,直到出现了灰度值变化,一阶导数大于或小于零,而阈值的存在就是为了给何时判定一阶导数不为零选择了一个标准,而灰度图像的像素值又是由彩色图像的RGB三个值决定的,一般是由传统公式Gray= R0.299+G0.587+B*0.114来计算的,可以看到G的比重最大,B的比重最小,所以转换出灰度图像的结果中,如果原图的绿色信息或者红色信息较为敏感,那么在进行阈值分割的时候用一步分割即可得到较好的结果,比如花的图片。另外就是在RGB图中本身颜色差别就很大,这样RGB三个通道的值的区别全都很大,也能得到较好的结果,比如狗的图片,这样的图片就比较适合用阈值法分割。
    而不具备这样先天条件的图片,RGB也不具备很好的物体的具体颜色信息,所以我选择用ycbcr色彩空间进行阈值选取,其中Y表示颜色的明亮度和浓度,而Cb和Cr则分别表示颜色的蓝色浓度偏移量和红色浓度偏移量。可以界定一个范围来帅选所需要的区域,这样再进行二值化就效果好了很多。

    附录

    滤波器h=fspecial(type,parameters); parameters为可选项,是和所选定的滤波器类型type相关的
    配置参数,如尺寸和标准差等。
    type为滤波器的类型。其合法值如下:

    合法取值 功能
    ‘average’ 平均模板
    ‘disk’ 圆形领域的平均模板
    ‘gaussian’ 高斯模板
    ‘laplacian’ 拉普拉斯模板
    ‘log’ 高斯-拉普拉斯模板
    ‘prewitt’ Prewitt水平边缘检测算子
    ‘sobel’ Sobel水平边缘检测算子

    中值滤波h=medfilt2(I1,[m,n]);
    结构元素函数strel(shape,parameters); shape指定了结构元素的形状。parameters是和输入shape有关的参数。

    合法取值 功能描述
    ‘arbitrary’或为空 任意自定义结构元素
    ‘disk’ 圆形结构元素
    ‘square’ 正方形结构元素
    ‘rectangle’ 矩形结构元素
    ‘line’ 线性结构元素
    ‘pair’ 包含2个点的结构元素
    ‘diamond’ 菱形的结构元素
    ‘octagon’ 8角形的结构元素

    膨胀I2=imdilate(I,SE); SE=strel(shape,parameters);
    腐蚀 I2=imerode(I,SE);
    开运算I2=imopen(I,SE);消除细小物体
    闭运算I3=imclose(I,SE);填充细小空洞,连接邻近物体
    击中击不中变换Ihm=bwhitmiss(I,SE1,SE2);

    形态学处理Iout=bwmorph(I,operation,n)

    合法取值 功能描述
    ‘bridge’ 桥接有单个像素缝隙分割的前景像素
    ‘clean’ 清楚孤立的前景像素
    ‘diag’ 围绕对角线相连的前景像素进行填充
    ‘fill’ 填充单个像素的孔洞
    ‘hbreak’ 去掉前景中的H形连接
    ‘majority’ 如果点P的8领域中一半以上像素为前景像素,则P为前景像素,否则为背景。
    ‘remove’ 去除内部像素(无背景像素相邻的前景)
    ‘shrink’ 将物体收缩为一个点或者带洞的环形
    ‘skel’ 骨骼化图像
    ‘spur’ 去除“毛刺”
    ‘thicken’ 粗化物体
    ‘thin’ 将物体细化至最低限度相连的线形

    边缘检测BW=edge(I,type,thresh,direction,’nothinning’) thresh是敏感度阈值参数,任何灰度值低于此阈值的边缘将不会被检测到。默认值为空矩阵[],此时算法自动计算阈值。

    type合法取值 梯度算子
    ‘sobel’ sobel算子
    ‘prewitt’ prewitt算子
    ‘reberts’ robert算子

    基于高斯-拉普拉斯算子的边缘检测BW=edge(I,’log’,thresh,sigma) sigma指定生成高斯滤波器所使用的标准差。默认时,标准差为2。
    基于Canny算子的边缘检测BW=edge(I,’canny’,thresh,sigma)

    展开全文
  • CTF解题基本思路步骤(misc和web)

    万次阅读 多人点赞 2020-10-22 16:01:12
    文章目录CTF-web基础解题步骤CTF-misc解题思路图片:主要步骤:JPG:特征LsbIDAT隐写修改高度PNG:特征修改高度XORGIF:特征其他:- bgp:音频:视频:逐帧分割其他压缩包:流量:其他:pyc文件相关DTMFpcap文件修复...
  • (1)进一步明确各级政府的事权范围和各级预算主体的支出职责。①总体上政府与市场的关 系...完善转移支付制度的基本途径,首先是进一步 明确转移支付的目标模式,而后通过增量与存量同时并举的微调方式向目标模式逼近
  • 网络渗透基本思路及方法

    千次阅读 2021-03-17 09:55:55
    网络渗透基本思路及方法 网络渗透分为二个阶段:①信息收集,了解靶机的IP地址、操作系统、开放端口、服务版本号、发送和接收的信息;②根据靶机的操作系统版本和服务端口的版本号,直接用与之相匹配的漏洞攻击工具...
  • 扫雷游戏开发基本思路

    千次阅读 2018-11-22 13:28:52
    今天给大家介绍传统扫雷游戏的制作思路吧,为什么选择这个游戏呢? 1.它太金典了,金典到我们都知道,都玩过,都会玩; 2.它也是一个轻量级的小游戏,比较简单。 我们先来捋一下扫雷游戏中的要素 : 从上到下...
  • 快速排序 ...快速排序的基本思想是 1、先从数列中取出一个数作为基准数 2、分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边 3、再对左右区间重复第二步,直到各区间只...
  • 项目一:SORM基本框架之基本思路

    千次阅读 2017-05-28 19:35:57
    SORM:Simple Object Relationship Mapping 简单的对象关系映射项目,该项目是博主跟着视频学的,接下来的几篇博文将总结并复习...基本架构:1)核心包 Query接口:SQL操作的对外接口,后期将其改为抽象类,封装所有数据
  • 课程链接:添加链接描述 1.分类 1.白噪声序列(纯随机序列,无研究意义) 2.平稳非白噪声序列 AR MA ARMA三种模型 3.非平稳序列 差分法转化成ARIMA序列 2.单变量、多变量时间序列 1.单变量时间序列 ...
  • 快速排序基本思路

    千次阅读 2018-10-11 11:24:45
    快速排序的基本思想是  1、先从数列中取出一个数作为基准数  2、分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边  3、再对左右区间重复第二步,直到各区间只有一个数 概括来说为 挖...
  • 准备beyond compare和notepad++  准备官方包和移植包 先删除,除META-INF,System,boot.img,data以外的文件 然后用beyond compare对比脚本文件 删除前面两段机型验证 然后删除 package_extract_dir("...
  • 动态规划(1):基本思路以及步骤

    万次阅读 多人点赞 2016-07-31 11:05:11
    基本思想动态规划是针对一类求最优解的问题的算法, 其核心是将一个问题分解成为若干个子问题(这里对应下文的子问题使用条件), 部分类似于分治的思想(不懂得可以参考归并排序), 通过求每一次的最优决策, 来...
  • 几种机器学习模型的基本思路

    千次阅读 2016-11-10 17:07:54
    本文试图从分类学习来分析现有几种机器学习模型的基本思路
  • Monte Carlo方法的基本思路

    千次阅读 2014-11-09 20:37:38
    Monte Carlo方法的基本思路 (1)针对实际问题建立一个简单且便于实现的概率统计模型,使所求的解恰好是所建模型的概率分布或其某个数字特征,比如是某个事件的概率,或者是该模型的期望值。 (2)对模型中的随机...
  • 增删改查--基本思路

    千次阅读 2019-06-27 18:58:10
    使用增删改查的常规情景是对表格中的行数据进行修改、删除以及增加行数据。 对于表格是一个数组包含多个对象,每个对象渲染一行。 增加操作: ...先定义一个单独的初始对象,用于做每次新增操作,点击新增时,将这...
  • 数据库表设计 基本思路

    千次阅读 2018-01-30 16:05:06
    好的数据结构会影响速度。好的数据库表设计会影响数据库操作效率。特别是数据多的时候,如果表的结构不好的话操作的时候条件(where后的内容)会变的非常复杂。 SQL是关系数据库中用到的一种语言。...
  • 在我做桌面运维的过程中,经常会遇到各种各样的问题,以前经常会一遇到问题就百度,离开百度就不知道该怎么办,没有自己的解决思路。这在工作当中是很严重的一个问题,因为如果遇到一些紧急的技术支持,VIP的技术...
  • java web 书城项目基本思路

    千次阅读 2019-06-29 18:26:31
    注册功能 1,建立模型 2,写dao 数据库连接池c3p0 写个xml配置 写c3p0工具类 登录功能 dao findUserByUserNameAndPassword service login() 3.servlet LoginServlet 用户信息的修改 ...跳转回modifyuser...
  • 高等学校教学团队建设的基本思路与制度保障
  • 利用栈实现计算器(calculator)一:基本思路及实现

    万次阅读 多人点赞 2019-05-20 15:30:27
    基本思路是利用栈将中缀算术表达式改写为后缀算术表达式。然后利用栈求解后缀算术表达式的结果 对于带有括号的中缀表达式,可以利用栈实现中缀表达式到后缀表达式的改写。基本思路是遍历输入字符串,对于每个字符...
  • 预测控制定性综合理论的基本思路和研究现状预测控制定性综合理论的基本思路和研究现状
  • vue 组件开发基本思路

    千次阅读 2019-06-27 11:24:00
    我的设计就是,一行两列 然后,AddItem组件 和 ListItem组件,分开占据 一列 对于bootstrap3 的使用,我都是抄写来的! 官网组件抄一抄,改一改就行了!...当以上写好之后,静态也面就写好了!...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 788,902
精华内容 315,560
关键字:

基本思路