精华内容
下载资源
问答
  • java学习中二

    2009-02-20 19:19:00
    1.java中不允许将一个数字作为布尔值。2.break与continue的区别:break指...3.java中的标签机制相当于goto语句,例如:public class t1 { public static void main(String[] args) { double r=0; int i=1; label

    1.java中不允许将一个数字作为布尔值。

    2.break与continue的区别:

    break指退出当前循环体,而continue指退出此次循环开始下一次循环。

    3.java中的标签机制相当于goto语句,例如:

    public class t1 {
     public static void main(String[] args)
     {
      double r=0;
      int i=1;
      label1:
      while(r<0.99)
      {
       r=Math.random();
       System.out.println(r);
       i+=1;
       for(int j=0;j<10;j++){
        if(j>5)
         continue label1;
        else
         System.out.print("ok");
       }
      }
      
     }
    }

    程序中的continue若换成break则跳到label后程序结束,而用continue则会继续执行程序。java中使用标签的唯一理由就是要循环嵌套,而且你想从不止一个嵌套中break和continue。

    展开全文
  • 本题算法标签:贪心。 本题贪心思路:每一次交换首尾。 证明方式: 对于数列: 1 , 2 , 3 , . . . . . . , i , i + 1 , i + 2 , . . . . . . , j , j + 1 , . . . . . . n 1,2,3,......,i,i+1,i+2,......,j,j+1,......

    原题

    魔法训练(train.cpp)

    【题目描述】

    ZEY做梦梦到自己穿越到了一个魔法世界。但是他却不知道运用魔法的技巧,于是他找到了隐居的魔法大师学技巧。
    大师一挥手,地上就升起了一排石柱,这些石柱的高度从右往左正好是 1,2,3,......,n1,2,3,......,n 。大师让ZEY运用魔法将两个石柱交换位置,并规定了得分标准:当ZEY的所有交换操作结束后,对于任意第 ii 个石柱和第 jj 个石柱,只要满足 i<ji<jh[i]>h[j]h_{[i]}>h_{[j]} ,就可以的一分。ZEY发现,每交换一次石柱就会消耗 11 点魔法,而他最多只有 mm 点魔法,ZEY想知道他最多能得多少分。

    【输入说明】

    输入文件名为 train.in
    输入为两个整数,分别是 nnmm ,两个整数用空格隔开。

    【输出说明】

    输出文件名为 train.out
    输出一个整数,表示ZEY的最高得分。
    输入样例1:

    4 1
    

    输出样例1:

    5
    
    

    输入样例2:

    4 10
    

    输入样例2:

    6
    

    【样例说明】

    对于样例1,交换 1144 ,石柱变为 4,3,2,14,3,2,1 ,可以得 55 分。
    对于样例2,魔力足够将其换为 4,3,2,14,3,2,1 ,得 66 分。

    【数据范围】

    对于 3030% 的数据, 1n1001\le n\le 1001m1001\le m\le 100
    对于 100100% 的数据, 1n1091\le n\le 10^91n1091\le n\le 10^9

    题解:

    本题时间复杂度正解: O(N)O(N)
    本题算法正解:不需要循环,递归。只需要1次判断。
    本题算法标签:贪心。
    本题贪心思路:每一次交换首尾。
    证明方式:
    对于数列: 1,2,3,......,i,i+1,i+2,......,j,j+1,......n1,2,3,......,i,i+1,i+2,......,j,j+1,......n 中,当交换 iijj 时,得到的数列为: 1,2,3,......,j,i+1,i+2,......i,j+1,j+2,......n1,2,3,......,j,i+1,i+2,......i,j+1,j+2,......n,得分段为 iji- j 中,每交换一次得分为: 2(ji)12 * (j-i)-1 分。要让此方法尽可能的大,只有让 ii 尽可能小, jj 尽可能大。
    代码实现方式:

    1. 循环
      O(M)O(M) 的算法会超时。洛谷评测机很快,所以可以得90分,但是在CCF上可能得不了高分,所以这个方法放弃。
    2. 等差数列
      详见代码:
    #include<cstdio>
    signed main(){
    	freopen("train.in","r",stdin);
    	freopen("train.out","w",stdout);
    	long long n,m;
    	scanf("%lld%lld",&n,&m);
    	long long ans=0;
    	if(m>=(n>>1))ans=((n-1)*n)>>1;//特判,当m大于2/n时,直接用等差数列即可。
    	else ans=((2*(n-1)-1+2*(n-2*m+1)-1)*m)>>1;
    	printf("%lld",ans);
    	return 0;
    }
    
    展开全文
  • html中二级菜单的应用

    2020-07-12 22:12:34
    在很多网页中我们都可以看到有二级菜单的应用,下面这就是一个简单的二级菜单的应用图片 二级菜单的主要实现方法是利用ul>li(无序列表)来写这些菜单框,然后利用浮动来实现菜单框的横向排列,最后在用伪类元素...

    在很多网页中我们都可以看到有二级菜单的应用,下面这就是一个简单的二级菜单的应用图片
    在这里插入图片描述二级菜单的主要实现方法是利用ul>li(无序列表)来写这些菜单框,然后利用浮动来实现菜单框的横向排列,最后在用伪类元素hover和隐藏元素display:none来实现二级菜单的效果。
    代码实现如下:

    <!DOCTYPE html><html lang="en"><head>    
    <meta charset="UTF-8">    
    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <meta http-equiv="X-UA-Compatible" content="ie=edge">    <title>Document</title>    
    <style>        
    *{        
    margin: 0px;        
    padding: 0px;        
    font-size: 14px;        
    text-align: center;    
    }        
    a{        
    /* 去掉a标签下划线 */        
    text-decoration: none;        
    color: rgb(112, 9, 98);    
    }    
    /* 设置一级菜单属性 */    
    .menu1{       
     border: 1px solid black;        
     width: 800px;                   
     margin: 0 auto;    
     }    
     ul.menu1 li{        
     list-style: none;       
     float: left;        
     background-color: rgb(87, 143, 168);        
     width: 160px;        
     height: 30px;    
     }    
     ul.menu1 li:hover{       
     background-color: aqua;    
     }    
     ul.menu1 li ul.menu2{        
     /* 当鼠标不点击时隐藏二级菜单 */        
     display: none;    
     }    
     ul.menu1 li:hover ul.menu2{        
     /* 使二级菜单显示出来 */        
     display: block;    
     }    
     </style>
     </head>
     <body>    
     <ul class="menu1">        
         <!--一级菜单 -->        
         <li><a href="#">菜单一</a></li>       
         <li><a href="#">菜单二</a>            
         <ul class="menu2">               
             <!-- 二级菜单 -->                
             <li><a href="#">hello</a></li>                
             <li><a href="#">world</a></li>                
             <li><a href="#">!!!</a></li>            
         </ul>        
         </li>        
         <li><a href="#">菜单三</a></li>        
         <li><a href="#">菜单四</a></li>        
         <li><a href="#">菜单五</a></li>    
     </ul>
     </body>
     </html>

    效果图:
    在这里插入图片描述
    需要注意的问题:在编写的过程中一定要注意选择器不要使用错误,例如ul和它里面的类名之间不要空格符号,然后就是注意伪类元素与隐藏元素的正确使用。

    展开全文
  • 二分类问题的交叉熵 ...对于样本点(x,y)来说,y是真实的标签,在二分类问题中,其取值只可能为集合{0, 1}. 我们假设某个样本点的真实标签为yt, 该样本点取yt=1的概率为yp, 则该样本点的损失函数为 -log(yt|yp)=-...
        

    二分类问题的交叉熵

      在二分类问题中,损失函数(loss function)为交叉熵(cross entropy)损失函数。对于样本点(x,y)来说,y是真实的标签,在二分类问题中,其取值只可能为集合{0, 1}. 我们假设某个样本点的真实标签为yt, 该样本点取yt=1的概率为yp, 则该样本点的损失函数为

    -log(yt|yp)=-(ytlog(yp)+(1-yt)log(1-yp))

    对于整个模型而言,其损失函数就是所有样本点的损失函数的平均值。注意到,对于该损失函数,其值应该为非负值,因为yp的取值在(0,1)之间。

    自己实现的方法有问题?

      在Python的sklearn模块中,实现二分类问题的交叉熵损失函数为log_loss()。我们尝试着运行官网中给出的例子,同时,用自己的方法实现该损失函数,其Python代码如下:

    from sklearn.metrics import log_loss
    from math import log # 自然对数为底
    
    # 二分类的交叉熵损失函数
    # 利用sklearn模块的计算结果
    y_true = [0, 0, 1, 1]
    y_pred = [[.9, .1], [.8, .2], [.3, .7], [.01, .99]]
    sk_log_loss = log_loss(y_true, y_pred)
    print('Loss by sklearn: %s.'%sk_log_loss)
    
    # 利用公式计算得到的结果
    Loss = 0
    for label, prob in zip(y_true, y_pred):
        Loss -= (label*log(prob[0])+(1-label)*log(prob[1]))
    
    Loss = Loss/len(y_true)
    print('Loss by equation: %s.'% Loss)

    在y_pred中,每个样本点都对应一组概率,如果我们把第一个概率作为样本分类为0的概率,第二个概率作为样本分类为1的概率,我们就会得到以下的输出结果:

    Loss by sklearn: 0.1738073366910675.
    Loss by equation: 2.430291498935543.

    我们惊讶的发现,两种方法得到的损失函数值竟然是不一样的。可是,貌似我们的计算公式也没有出问题啊,这到底是怎么回事呢?
      这时候,我们最好的办法是借助源代码的帮助,看看源代码是怎么实现的,与我们的计算方法有什么不一样。

    研究sklearn中的log_loss()源代码

      sklearn模块中的log_loss()函数的源代码地址为:https://github.com/scikit-lea...
      在具体分析源代码之前,我们应该注意以下几点(这也是从源代码中发现的):

    • 损失函数中的对数以自然常数e为底;
    • 预测概率的值有可能会出现0或1的情形,这在公式中是无意义的。因此,该代码使用了numpy中的clip()函数,将预测概率控制在[eps, 1-eps]范围内,其中eps为一个很小的数,避免了上述问题的出现。

      在log_loss()函数中,参数为:y_true, y_pred, eps, normalize, sample_weight,labels,为了分析问题的方便,我们只考虑该函数在所有默认参数取默认值时的情形。y_true为样本的真实标签,y_pred为预测概率。
      对于样本的真实标签y_true, 源代码中的处理代码为:

        lb = LabelBinarizer()
    
        if labels is not None:
            lb.fit(labels)
        else:
            lb.fit(y_true)
            
        transformed_labels = lb.transform(y_true)
    
        if transformed_labels.shape[1] == 1:
            transformed_labels = np.append(1 - transformed_labels,
                                           transformed_labels, axis=1)

    也就说,当我们的y_true为一维的时候,处理后的标签应当为二维的,比如说,我们输入的y_true为[0,0,1,1],那么处理后的标签应当为:

    [[1 0]
     [1 0]
     [0 1]
     [0 1]]

      对于预测概率,源代码中的处理过程为

        # Clipping
        y_pred = np.clip(y_pred, eps, 1 - eps)
    
        # If y_pred is of single dimension, assume y_true to be binary
        # and then check.
        if y_pred.ndim == 1:
            y_pred = y_pred[:, np.newaxis]
        if y_pred.shape[1] == 1:
            y_pred = np.append(1 - y_pred, y_pred, axis=1)

    也就说,当我们的y_true为一维的时候,处理后的标签应当为二维的,这跟处理样本的真实标签y_true是一样的。处理完y_true和y_pred后,之后就按照损失函数的公式得到计算值。

    自己实现二分类问题的交叉熵计算

      在我们分析完log_loss的源代码后,我们就能自己用公式来实现这个函数了,其Python代码如下:

    from sklearn.metrics import log_loss
    from math import log # 自然对数为底
    
    # 二分类的交叉熵损失函数的计算
    
    # y_true为一维,y_pred为二维
    # 用sklearn的log_loss函数计算损失函数
    y_true = [0,0,1,1]
    y_pred = [[0.1,0.9], [0.2,0.8], [0.3,0.7], [0.01, 0.99]]
    sk_log_loss = log_loss(y_true,y_pred)
    print('Loss by sklearn: %s.'%sk_log_loss)
    
    # 用公式自己实现损失函数的计算
    Loss = 0
    for label, prob in zip(y_true, y_pred):
        Loss -= ((1-label)*log(prob[0])+label*log(prob[1]))
    
    Loss = Loss/len(y_true)
    print('Loss by equation: %s.'% Loss)
    
    # y_true为一维,y_pred为二维
    # 用sklearn的log_loss函数计算损失函数
    y_true = [0,0,1,1]
    y_pred = [0.1, 0.2, 0.3, 0.01]
    sk_log_loss = log_loss(y_true,y_pred)
    print('Loss by sklearn: %s.'%sk_log_loss)
    
    # 用公式自己实现损失函数的计算
    Loss = 0
    for label, prob in zip(y_true, y_pred):
        Loss -= ((1-label)*log(1-prob)+label*log(prob))
    
    Loss = Loss/len(y_true)
    print('Loss by equation: %s.'% Loss)
    

    运行该函数,输出的结果为:

    Loss by sklearn: 1.0696870713050948.
    Loss by equation: 1.0696870713050948.
    Loss by sklearn: 1.5344117643215158.
    Loss by equation: 1.5344117643215158.

      这样我们就用公式能自己实现二分类问题的交叉熵计算了,计算结果与sklearn的log_loss()函数一致。

    感悟

      有空就得读读程序的源代码,不仅有助于我们解决问题,还能给我们很多启示,比如log_loss()函数中的np.clip()函数的应用,能很好地避免出现预测概率为0或1的情形。
      log_loss()函数的实现虽然简单,但阅读源代码的乐趣是无穷的。以后也会继续更新,希望大家多多关注。

    注意:本人现已开通两个微信公众号: 因为Python(微信号为:python_math)以及轻松学会Python爬虫(微信号为:easy_web_scrape), 欢迎大家关注哦~~

    展开全文
  • 以下()选项不能够正确地得到这个标签:(选一项) A、$("#btnGo") B、$(".btnGo") C、$(".btn") D、$("input[type='button']") 4.在HTML页面中有如下结构的代码: S3N认证考试 一 二 三 四 请问下列选项()所示jQuery...
  • 图像处理中二值图像边界提取

    千次阅读 2018-05-02 16:53:04
    今天下午要完成一部分实验,中间涉及...本来想直接copy一下,结果人家的是.png,而自己是已知图像中的一些数据,所以直接将我得类别标签图转化为二值图,然后按照网上的思路写就可以了,我参考的是:https://www.cnb...
  • android中二维数组的解析

    千次阅读 2012-08-16 15:03:56
    服务器返回的是一个字符串【实质是一个二维数组,在一个标签里面】 1.给服务法的请求和返回格式  >>>>>>>>>>>>>>>>>>>>>>>>>>>request:        358148045004426;Tandroid02_120810:72229B8C861CE780F253...
  • java中二进制、八进制、十六...标签:  java中二进制、八进制 分类: java技术问题 十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Inte
  • 本提问标签页选不到这问题这么低级别的,只好选了服务器 背景: 1、原电脑(设为 A)大概配置:2代i5,老intel SSD装win10,二手阵列卡带个SATA RAID 5 放电影,照片,等,半仓库,不时用到但不多。 2、最近新...
  • CSS 3 中二维三维以及渐变过程简单总结 及效果(动图不好发) 一. 不动,区域内的变化(本质生产一张图片) /*渐变 1 长方形之渐变先定义长方形的宽高大小(好观察最好加边框) /*方向 颜色 位置*/ 利...
  • js实现鼠标滑过显示二级菜单JS代码如下 CSS代码如下 菜单部分代码如下 我那里写错了呢,不能鼠标滑过哪显示啥? 滑过 产品介绍 显示下面的子菜单? onmouseover是鼠标移动到某元素执行的鼠标事件。...
  • 什么是多标签分类 学习过机器学习的你,也许对分类问题很熟悉。比如下图: image.png 图片中是否包含房子?你的回答就是有或者没有,这就是一个典型的二分类问题。 image.png 同样,是这幅照片,问题...
  • 前言 今天要很任性的研究一下Android5.0中Settings子模块的跳转实现。 原作者: ... Settings应用的Launcher类 我们首先看一下Settings应用的Launcher类。查看package/app/Settin...
  • PHP中二维数组的排序方法

    千次阅读 2007-11-26 11:27:00
    导读: 日记分类查看日记 类别:php| 浏览(451) | 日记标签:php数组排序array_multisortarraysort 2007-02-06 15:28:52 本文介绍的是从 BugFree 摘录来的二维数组排序函数,可以实现类似 MySQL 的 ORDER BY 效果,...
  • pytorch中二分类和多分类问题记录篇2

    千次阅读 2020-11-03 00:42:10
    numpy(pred_y) # 真实的标签如下所示 true_y = np.array([[ 1 , 0 , 0], [ 0 , 1 , 0], [ 0 , 1 , 0], [ 0 , 0 , 1]]) true_y=torch.from_numpy(true_y) target = np.argmax(true_y, axis=1) #(4,) #其实就是获得...
  • SAX解析器采用了基于事件的模型,它在解析XML文档的时候可以触发一系列的事件,当发现给定的tag的时候,它可以激活一个回调方法,告诉该方法制定的标签已经找到。SAX对内存的要求通常会比较低,因为它让开发人员...
  • 在configuration标签的settings配置属性localCacheScope=STATEMENT,默认是Session级别 3.commit\rollback\update等操作,都会更新一级缓存,query对应的就是上面两种情况 MyBatis二级缓存,不同Session级别共享,...
  • (只能在IE和chrome下使用) ④outerText 设置(包括标签)或获取(不包括标签)对象的文本 ⑤value:属性可设置或返回密码域的默认值。获取文本框的值 二、jQuery中的text()、html()和val() jQuery中设置或者获取所选内容...
  • <package name="com.mybatis.source.mapper" /> package标签: 根据属性配置,找到com.mybatis.soource.mapper下的所有类,再通过映射找到xml文件,然后进行mapper.xml文件的解析工作,mapper.xml文件解析最终由...
  • iModel中二个窗口界面同时共享一个实体数据的方法 在iModel中可以在一个窗口启动后,再启动另一个窗口来显示同一个实体数据的另一部分,一个示例界面如下: 点击详细后会如下弹出一个浮动窗口,显示明细数据。...
  • python3中二维List数据的三种处理方法及比较 标签: python 矩阵 算法 [TOC] 问题引入 这几天在处理一个棋盘状态数据,需要对棋盘状态状态是否为“同一个状态”,这里就需要对棋盘状态进行旋转,左右翻转等...
  • 之后,我们可以使用sklearn的shuffle函数将数据标签和特征打乱(数据标签和特征仍保持原有的对应关系)   # now, let's shuffle labels and the array, the same way from sklearn.utils ...
  • 关于百度文本编辑器Ueditor使用过程中二次渲染页面失败的问题,第一次好使,第二次不好用了,归根结底就是再返回edit实例的时候,他将创建好的edit对象放到数组里面了,可以看一下源码 UE.getEditor = function ...
  • 低于a和b(十六进制),表示二进制补码有符号二进制数. 例如: a = 0x17c7cc6e b = 0xc158a854 现在我想知道一个&的签名代表... 标签:python,python-2-7,hex,binary 来源: https://codeday.me/bug/20190717/1490315.html
  • 之后,我们可以使用sklearn的shuffle函数将数据标签和特征打乱(数据标签和特征仍保持原有的对应关系)   # now, let's shuffle labels and the array, the same way from sklearn.utils import shuffle X1, ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,061
精华内容 424
关键字:

中二标签