最近在做ProtoBuf相关的项目,其中用到了动态解析,网上看了下相关资料和博文都比较少,自己来写一个记录一下学习过程.   Protocol Buffers是结构化数据格式标准,提供序列化和反序列方法,用于存储和交换.语言中立,平台无关.可扩展.目前官方提供了C++.Java.Python API,也有其他语言的开源api(比如php).可通过 .proto文件生成对应语言的类代码 如果已知protobuf内容对应的是哪个类对象,则可以直接使用反序列化方法搞定(Xxx.parseFrom(in…
1 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 2 思路和方法 (1)异或:除了有两个数字只出现了一次,其他数字都出现了两次.异或运算中,任何一个数字和自己本身异或都是0,任何一个数字和0异或都是本身. (2)哈希表.unordered_map<int, int> map; for(int i = 0; i < data.size(); i++) map[data[i]]++;if(map[data[i]]== 1) v.pus…
题目:两个乒乓球队进行比赛,各出三人. 甲队为a,b,c三人,乙队为x,y,z三人. 已抽签决定比赛名单. 有人向队员打听比赛的名单. a说他不和x比,c说他不和x,z比, 请编程序找出三队赛手的名单. 思路:1 产生所有的可能           2 去除不满足条件的 public class 第十八题乒乓球比赛 { public static void main(String[] args) { /* * 思路:1 产生所有的可能 * 2 去除不满足条件的 */ char[] a = new…
/*两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人. 已抽签决定比赛名单.有人向队员打听比赛的名单. a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单.*/ public class Test18 { public static void main(String[] args) { String[] s1 = {"a","b","c"}; String[] s2 = {"x",&quo…
给定一个英文字符串,请编写一个PHP函数找出这个字符串中首先出现三次的那个英文字符(需要区分大小写),并返回 //统计字符串中出现的字符的出现次数 public function strNum(){ //接受参数 $str = input('param.str'); //定义空数组 $arr = []; //循环所有的字符串里的字符 for($i=0;$i<strlen($str);$i++){ //判断是否存在 if(isset($arr[$str[$i]])){ //存在次数+1 $arr[…
day14 --------------------------------------------------------------- 实例022:比赛对手 题目 两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定比赛名单.有人向队员打听比赛的名单.a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单. 分析:来一个最简单暴力的,很不完美,先是生成所有组合的列表list2,再逐步筛选list2,看这近20行的代码头大... 1 jia = ["a…
Java中请优先使用try-with-resources而非try-finally Java库包含了很多需要手工调用close方法来关闭的资源.比如说InputStream.OutputStream及java.sql.Connection.关闭资源常常会被客户端所忽视,这会导致可怕的性能问题.虽然很多资源使用了终结器来作为安全网,不过终结器却并不那么尽如人意. 从历史上来看,try-finally语句是确保资源会被恰当关闭的最佳方式,即便在遇到异常或是返回语句时亦如此: // try-final…
关于Java中的对象.类.抽象类.接口.继承之间的联系: 导读: 寒假学习JavaSE基础,其中的概念属实比较多,关联性也比较大,再次将相关的知识点复习一些,并理顺其中的关系. 正文: 举个例子:如果现在要想定义一个动物,那么动物肯定是一个公共的标准,而这个公共标准就可以通过接口来完成. 在动物中又分为两类:哺乳动物.卵生动物,而这个标准属于对动物的标准进一步细化,应该称为子标准,所以此种关系可以使用接口的继承来表示. 而不如动物i可以继续划分为人.狗.猫等不同的类型,由于这些类型不表示具体的事…
9.2 找出12和8的最大公约数和最小公倍数.     public class Test {     public static void main(String[] args) {         getcommon_mu(12,8);         getcommon_div(12,8);     } //计算 最大公约数  和  最小公倍数     static void getcommon_mu(int n, int m) {         int i, b, d;        …
9.1 找出100到200之间的质数.  public class Test {     public static void main(String[] args){         for (int j=100; j<200; j++){             int k;             for(k=2; k<j; k++){                 int tmp = j%k;                 if (tmp == 0){ /*如果有一个k,能够除开j…