最近在面试,遇到一个面试题 字符串 String str = "AD428C93DE" 编程实现把 str 的内容放到 Byte[6] b 的数组中,存入后并能恢复原来的字符串. 初始看到该题,有点一愣,感觉用 ascii 编码也无法保存这字符串啊.后来才明白一点,要把 ABCDE 字符当做 16 进制中的 ABCDE存储,刚好都是小于 5位就可以保存的,要是多个 F 就无法保存了. package com.util; /** * @Author: Robert_mml * @Vers…
通过学习学会了文本的访问,了解一点哈希表用途.经过网上查找做成了下面查询文章重复词的JAVA程序. 1 思 思路: (1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词)数组中. (2)定义一个Map,getkey是字符串类型,保存单词:value是数字类型,保存该单词出现的次数. (3)遍历(1)中得到的字符串数组,对于每一个单词,考察Map的getkey中是否出现过该单词,如果没出现过,map中增加一个元素,key为该单词,value为1(第一次出现): 如果…
替换某个字符串中的一个或若干个字串为数组中某些值 php本身有自带的函数,可以不用循环非常高效的实现其效果: 实例代码:   $phrase  = "You should eat fruits , vegetables, and fiber every day.";  $healthy = array("fruits", "vegetables", "fiber");  $yummy   = array("pizza…
工作上有这样的需求之前找了好多都不行,好不容易有个可以的赶紧留下来. 原址:http://blog.163.com/roadwalker@126/blog/static/113561841201013525720/ 字符串转换成十六进制字符串方法1: /** * 字符串转换成十六进制字符串 */ public static String str2HexStr(String str) { char[] chars = "0123456789ABCDEF".toCharArray(); S…
procedure Hex2Png(str: string; out png: TPngObject); var stream: TMemoryStream; begin if not Assigned(png) then png := TPngObject.Create; stream := TMemoryStream.Create; stream.SetSize(Length(str) ); HexToBin(PChar(str), stream.Memory, stream.Size);…
一.题目:数字在排序数组中出现的次数 题目:统计一个数字在排序数组中出现的次数.例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在这个数组中出现了4次,因此输出4. 二.解题思路 2.1 直接运用二分查找 既然输入的数组是排序的,那么我们很自然地就能想到用二分查找算法.在题目给出的例子中,我们可以先用二分查找算法找到一个3.由于3可能出现多次,因此我们找到的3的左右两边可能都有3,于是我们在找到的3的左右两边顺序扫描,分别找出第一个3和最后一个3.因为要查找的数字在长度为n的数…
思路: 利用二分查找,分别查找待统计数字的头和尾的下标,最后做差加一即为结果. C++: #include <iostream> #include <vector> using namespace std; int GetFirstK(vector<int>& nums, int startpos, int endpos, int k) { if(startpos > endpos) ; ; if(nums[mid] == k) { || (mid >…
var arr = ["白色", "黑色", "红色", "粉色"]; var sel = "黑色"; if (arr.toString().indexOf(sel) > -1) { alert("true"); } //可以判断出黑色在arr数组中…
题目: 统计一个数字在排序数组中出现的次数. 思路: 对二分查找进行改进,找到数字在数组中第一次出现和最后一次出现的位置,这样就得到它出现的次数. 以找第一次出现的位置为例:如果mid元素大于k,则在前半段找:如果小于k,则在后半段找:如果等于k,则要看mid的前一个元素是不是k,如果是,则在前半段找,如果不是,则这就是第一次出现的位置. 时间复杂度O(logn). 代码: class Solution { public: int GetNumberOfK(vector<int> data ,…
<script> function in_array(stringToSearch, arrayToSearch) { for (s = 0; s < arrayToSearch.length; s++) { thisEntry = arrayToSearch[s].toString(); if (thisEntry == stringToSearch) { return true; } } return false; } var arr = [1,2,3,4,5]; if(in_arr…
题目 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 思路 遍历每行,每行中利用二分法查找 实现 package lms.algorithm.refers2offer.array; /** * <功能简述>在一个二维数组中(每个一维数组的长度相同), * 每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序. * 请完成一个函数,输…
题目: 统计一个数字在排序数组中出现的次数. 思路: 1.顺序遍历 顺序扫描一遍数组,统计该数字出现的次数. 时间复杂度:O(n) 2.二分查找 假设我们需要找的数字是k,那么就需要找到数组中的第一个k和最后一个k出现的位置. 如何通过二分查找得到第一个k的位置呢? 取数组中间的数字与k作比较, 如果该数字比k大,那么k只能出现在前半部分,那么下一轮只能在前半部分找: 如果该数字比k小,那么k只能出现在后半部分,那么下一轮只能在后半部分找: 如果该数字等于k,需要判断这是不是第一个k,如果该数字…
题目描述: 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对. 输入一个数组,求出这个数组中的逆序对的总数. 示例 1: 输入: [7,5,6,4] 输出: 5 限制: 0 <= 数组长度 <= 50000 分析: 本题的暴力方法显然容易想到,但是会报超时,难度等级 hard 显示 考察的是使用 时间O(log n*logn)空间 O(n)的解法.可以使用 「归并排序」 和 「线段树」 两种方法. 利用「归并排序」和「线段树」计算逆序对都是非常经典的做法.这里我们…
工作一年多了,越来越感到自己不能这样一直下去,在最好的青春里面却已经死了.被时间消磨了意志,被工作杀死了精神.我想,我只要活着,我就要去不断的要求自己,不断的去追求更高的山峰. 放眼四周,有趣的灵魂越来越少.独立的人格也越来越稀薄.我们真的不能为了工作而去工作,那样我们活着就和死了一样.生活充满了重复性,我们不断的重复着自己所做一切,上班下班,周末休息.那样活着其实已经死了.我在这一年里面厌恶这种生活.我决定开始新的生活,制定一个计划,每天朝这个方向努力,哪怕用一年两年甚至半辈子,我也是无怨无悔…
方法依赖commons-codec包  maven的引入方式如下 <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.12</version> </dependency> 1. 普通字符串转换为16进制字符串 /** * 将普通字符串转换为16进制字符串 * @param…
package chengbaoDemo; import java.util.Arrays; /** *需求:数组的扩容以及数据的拷贝 *分析:因为String的实质是以字符数组存储的,所以字符串的追加,<br> *实质上是数组的扩容,数据的移动(复制) * */ public class TestString { public static void main(String[] args) { String src = new String("src"); String…
[Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java.排序 [Environment]Windows 7 . JDK6 [Author]wintys (wintys@gmail.com) http://wintys.cnblogs.com [URL]http://www.cnblogs.com/wintys/p/jobinterview_extract…
[此系列优先解决自己经历的面试题] 2018.11.16 面试题一:你如何获取浏览器URL中查询字符串中的参数? 题目代码: 测试地址为 https://www.sogou.com/tx?query=javascript&ie=utf8&_ast=1542338688&_asf=null&w=01029901&hdq=sogou-clse-f507783927f2ec27&duppid=1&cid=&cid=&s_from=resul…
线程安全使用(四)   这是时隔多年第四篇,主要是因为身在东软受内网限制,好多文章就只好发到东软内部网站,懒的发到外面,现在一点点把在东软写的文章给转移出来. 这里主要讲解下CancellationTokenSource,CancellationTokenSource是用于取消线程,具体使用起来有点另类:首先定义实体,然后将其下的属性ToKen传递给线程,当需要取消线程时,调用下Cancel()方法.例子我依然采用了MSDN的例子,但我做了一些修改,这个例子虽然看起来挺复杂,但还是记录了许多内容…
今天给大家分享一个Java经典的面试题,题目是这样的: 本题是LeetCode题库中的49题. 将一个字符串数组进行分组输出,每组中的字符串都由相同的字符组成 举个例子:输入["eat","tea","tan","ate","nat","bat"] 输出[["ate","eat","tea"],["nat",…
题目: 字符串的排列 热度指数:5777 时间限制:1秒 空间限制:32768K 本题知识点: 字符串 题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 结果请按字母顺序输出. 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 结果请按字…
package com.swift; public class Douhao_String_Test { public static void main(String[] args) { /* * 如何把一段逗号分割的字符串转换成一个数组? * String s = "a" +"b" + "c" + "d";生成几个对象? */ String str="sdjkfl,sldfj,abc,ei3,239d";…
php开发面试题---2.php常用面试题二(表单提交方式中的get和post有什么区别) 一.总结 一句话总结: 数据位置:get参数在url里面,post在主体里面 数据大小:get几kb,post比较大(所以适合表单提交) 获取方式:get传递的数据通过$_GET[]获取,post传递的数据通过$_POST[]获取. get是表单的默认提交方式,会把数据附加到表单的action属性所指向的URL中,在URL中可见,安全性较差:post会把数据放到http的包体中,用户一般看不到,安全性较好…
http://ac.jobdu.com/problem.php?pid=1534 题目1534:数组中第K小的数字 时间限制:2 秒 内存限制:128 兆 特殊判题:否 提交:1120 解决:208 题目描述: 给定两个整型数组A和B.我们将A和B中的元素两两相加可以得到数组C.譬如A为[1,2],B为[3,4].那么由A和B中的元素两两相加得到的数组C为[4,5,5,6].现在给你数组A和B,求由A和B两两相加得到的数组C中,第K小的数字. 输入: 输入可能包含多个测试案例.对于每个测试案例,…
var arry = [ "C#", "html", "css", "JavaScript" ]; var result= $.inArray("C#", arry); //如果arry数组里面存在"C#" 这个字符串则返回该字符串的数组下标,否则返回(不包含在数组中) -1…
string weclome=""; byte[] data = new byte[1024]; //字符串转byte数组 data = Encoding.ASCII.GetBytes(welcome); //byte[]数组转ASCII字符串 weclome=Encoding.ASCII.GetString(data, 0, data.length)…
package com.rui.test; import java.util.Random; /** * @author poseidon * @version 1.0 * @date:2015年10月25日 上午11:12:24 * @description: 面试题-->写一个函数,返回一个数组中所有元素被第一个元素除的结果 * 陷阱: * 1.循环需要倒着写,为什么? * 想想顺着写循环的结果,第一个元素的值会发生变化后面再除就会有问题 * 2.需要考虑除数为零的边界 * 考察: * 面试…
<?php /** * byte数组与字符串转化类 * @author ZT */ class Bytes { /** * 转换一个string字符串为byte数组 * @param $str 需要转换的字符串 * @param $bytes 目标byte数组 */ public static function getbytes($str) { $len = strlen($str); $bytes = array(); for($i=0;$i<$len;$i++) { if(ord($str…
C#中要如何才能删除一个字符串数组中的空字符串呢?随着微软对C#不断发展和更新,C#中对于数组操作的方式也变得越来越多样化.以往要实现过滤数组中的空字符串,都是需要实行循环的方式来排除和过滤.C#3.0新增的lambda表达式就可以很方便实现这个功能,下面介绍多种方式来实现清除数组中的空字符串,以及在.net中将字符串数组中字符串为空的元素去除. 方式一:使用lambda表达式筛选过滤掉数组中空字符串 /// <summary> /// 使用lambda表达式排除/过滤/清空/删除掉字符串数组…
将JSon格式的"数组"字符串转换为Java对象"数组". 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“name.values”集合, 通过get(key)方法取得key对应的value部分(字符串). 通过getJSONObject(key)可以取得一个JSONObject对象. 通过getJSONArray(key)可以得到一个JSONArray对象. 导入需要的jar包: package com.west.…