每周一道算法题006:抽签组合

本文详细解答了抽签组队的全组合问题,并用golang和php两种语言实现算法
分类: 编程语言 发布时间: 08-02 20:30 阅读次数: 0

PHP 内部生乱?Zend 创始人的离职另有内幕

分类: 业界资讯 发布时间: 08-02 20:30 阅读次数: 0

List&&Set

List 是一个接口实现可重复有序的存储,有ArrayList和Linked List两种实现类中使用的方法为add()list.iterrator获得迭代器,通过迭代器进行遍历 区别在于数组和链表的区别 数组查询容易,增加和删除难, 链表增删容易,查询需要遍历; Set 一个不可重复无序的存储方式,也是常用方法为add和list.iterrator获得迭代器来遍历 hashSet底层为hashmap当我们判断是否为相同值的时候需要同时覆写hashcode和equals方法 TreeSet判断
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

类加载机制-双亲委派机制(三)

1.JDK内置 除了根类加载器其他的类只有1个父加载器 通俗的说双亲委派机制: 某一个类加载器想要加载特定的类,并不是由自己立刻去加载,而是把他委托给父加载器完成,如果父加载器上面还有父加载器,再委托给父亲的父亲,一直往上不断的追溯,直到根类加载器,由根类加载器特定的类,如果根类加载器无法加载,就把流程往下返回给拓展加载器,一直往下。在这个过程中只要有一个类加载器加载成功,就返回成功 根类加载器:JRE\lib\rt.jar或者-Xbootclasspath选项指定的jar包 拓展类加载器:J
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

【贪心】线段覆盖

原题传送门 思路 这道题就是《趣学算法》上第二章的会议问题,线段的端点相当于会议的开始时间与结束时间。 选择会议的贪心策略是:排序后依次选择最早结束且与已安排会议相容的会议。 排序的原则就是:若同时结束的情况下按开始时间降序排列,若不同时结束,则按结束时间升序排列。 但在这道题与会议问题有一点差别,那就是它直接按结束时间降序排列就可以了,不必搞两个条件。 这道题也有坑点,那就是:先输入的不一定是线段的左端点!!!右端点会先输出,若不判断便默认左右,会被坑掉一半的分!!!还有,这道题会出现负数!
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

【记录一个问题】没用任何用处的解决了libtask的context.c在32位NDK下的编译问题

32位下用ndk编译libtask出现这样的错误: [armeabi-v7a] Compile thumb : task <= context.c /Users/ahfu/code/android/android-ndk-r14b/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -MMD -MP -MF /Users/ahfu/code/gitcode/ahfuzhang/daily_coding/source_code/libtask-ma
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

数字类型内置方法一

数字类型内置方法 整型和浮点型统称伟数字型 整型内置方法(int) 1.用途: 年龄 号码 等级 2.定义: 可以使用int()方法将纯数字的字符串转为十进的整型 age = 18 # age = int(10) print(type(age)) <class 'int'> x = int('18') print(type(x)) <class 'int'> x = int('11.1') #报错 print(x) 3.常规操作+内置方法: 算术运算+比较运算 长整型 长整型只在pytho
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

【洛谷 1991】无线通讯网

题目描述 国防部计划用无线网络连接若干个边防哨所。2 种不同的通讯技术用来搭建无线网络; 每个边防哨所都要配备无线电收发器;有一些哨所还可以增配卫星电话。 任意两个配备了一条卫星电话线路的哨所(两边都ᤕ有卫星电话)均可以通话,无论他们相距多远。而只通过无线电收发器通话的哨所之间的距离不能超过 D,这是受收发器的功率限制。收发器的功率越高,通话距离 D 会更远,但同时价格也会更贵。 收发器需要统一购买和安装,所以全部哨所只能选择安装一种型号的收发器。换句话说,每一对哨所之间的通话距离都是同一个
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

HZOJ string

正解炸了…… 考试的时候想到了正解,非常高兴的打出来了线段树,又调了好长时间,对拍了一下发现除了非常大的点跑的有点慢外其他还行。因为复杂度算着有点高…… 最后正解死于常数太大……旁边的lyl用同样的算法拿了90分我却拿了个暴力的分40……花了那么多时间一分没多拿原地爆炸…… 由于大部分时间押在了T1,然后考试就炸了…… 题解: 因为字符串长度虽然很大,但是只有26个字符,考虑桶排,用线段树每个节点开一个26的桶,维护这个区间中各个数的个数,对于排序就可以拆成26次区间赋值。然而这样的down函
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

猜年龄游戏,奖品,三次机会

age=18 count=0 prize_dict={0:'布娃娃',1:'变形金刚',2:'奥特曼',3:''} while count<3: inp_age=input('请输入你的年龄>>>') if not inp_age.isdigit(): print('傻逼,你的年龄输错了') continue inp_age_int=int(inp_age) if inp_age_int==age: print('猜对了') print(prize_dict) for i in range(2
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

面试题复习-常用设计模式-策略模式

策略接口: package com.ajax.pattern.strategy; public interface EatWay { void cook(); } 策略1: package com.ajax.pattern.strategy; public class Fry implements EatWay { @Override public void cook() { System.out.println("炸");
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

Trailing Zeroes

题目: Trailing Zeroes You task is to find minimal natural number N, so that N! contains exactly Q zeroes on the trail in decimal notation. As you know N! = 1*2*...*N. For example, 5! = 120, 120 contains one zero on the trail. Input Input starts with a
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

线程中的yield()

属于本地方法,放弃当前的CPU资源,回到runnable状态。 /** * A hint to the scheduler that the current thread is willing to yield * its current use of a processor. The scheduler is free to ignore this * hint. * * <p> Yield is a heuristic a
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

Java:JVM的内存模型

JVM内存模型 JVM内存模型可以分为两个部分,如下图所示,堆和方法区是所有线程共有的,而虚拟机栈,本地方法栈和程序计数器则是线程私有的。 1. 堆(Heap) 堆内存是所有线程共有的,可以分为两个部分:年轻代和老年代。下图中的Perm代表的是永久代,但是注意永久代并不属于堆内存中的一部分,同时jdk1.8之后永久代也将被移除。 堆是java虚拟机所管理的内存中最大的一块内存区域,也是被各个线程共享的内存区域,该内存区域存放了对象实例及数组(但不是所有的对象实例都在堆中)。其大小通过-Xms(
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

JavaScript 表单事件

表单事件,当用户与表单元素进行交互时发生。 实例: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>表单事件</title> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 </head> 8 <bod
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

二分图匹配,最小点覆盖——POJ - 1325

题目链接 题目含义 两个机器分别有n,m种模式,每个工作需要任一机器达到某个模式,问最少要变换几次模式 题目分析 将两个机器的n,m种模式作为二分图的两个集合,每个工作代表之间的一条线 题目可以化为求能覆盖所有边的最少点(取a或b的点都可以) 然后根据定理,可以转化成求最大匹配 注意,当工作需要机器的模式是0时,这个工作不用变模式就可以完成,就可以不用考虑 题目代码 #include<stdio.h> #include<iostream> #include<string.h> using
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

01:kubernetes基础

1.1
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

day4 系统目录结构

Linux系统的目录结构: 逻辑上所有的目录只有一个顶点 / (根),所有目录的起点。 根下面类似一个倒挂的树一样的层次结构。(只有一棵树) 在Linux下通过挂载方式将存储空间直接或间接关联到根上形成树形结构 分区与目录没有任何联系 关于磁盘分区与挂载的命令(/etc/fstab——开机自动挂载) df -h 查看磁盘挂载情况 【dd if=/dev/zero of=/root/image bs=1024 //创建回环设备(虚拟磁盘)】 fdisk 【磁盘文件】 ——磁盘分区: sd——sc
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

知道手机的前三后四如何查询全部的号码,下面教你方法

当前我们用的手机号前三位是用来区分运营商,后面的8位分别用来区分省市的,但是在我们经常会遇到一些问题,就是知道对方姓名,以及手机号的前三位和后四位,但是不知道怎样去联系对 方,这样就会使我们失去很多时间和机会。已知前面三位和后面四位,中间四位数字的可能性就是0~9999,当然也不能一个个这样费时间的去试。 今天给大家介绍一个我以前用过的一款软件,快速的去查询其想要的全部号码,进一步的为您提供所需要的信息。首先我教大家如何去使用这款软件? 第一:已知手机号的前三位150--和后四位5260,以及
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0

JavaScript 变动事件

变动事件,当用户修改了DOM结构(添加或删除元素节点)后发生。 任何时候当元素被添加到DOM中或从DOM中移除时,DOM的结构就发生了变化,而这种变化就会触动变动事件。 1 <html> 2 <head> 3 <title>变动事件</title> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-s
分类: 其他 发布时间: 08-02 20:28 阅读次数: 0