## 一些棘手的问题 主要是解决问题思路（递归 map 迭代器） 原

Zhang_Java

1：(递归)有一个字符串，根据输入参数m，找出字符串的m个字符的所有字符串

String str ="abc", m=2  得到结果是 "ab" "ac" "bc"
String str ="abcd" , m=3 得到结果是"abc" "acd" "bcd" "abd"

public class CalCountSuan {
public static List<String> choose(String target, int m) {
doChoose(resultList, target, "", m, 0);
return resultList;
}

private static void doChoose(List<String> resultList, String target, String resultStr, int m, int head) {

// 递归头
if (resultStr.length() == m) {
return;
}

// 递归体
for (int i = head; i < target.length(); i++) {
doChoose(resultList, target, resultStr + target.charAt(i), m, i+1);
}
}

public static void main(String[] args) {
List<String> list = choose("abcdefssss",3);
HashSet<String> hashSet = new HashSet<>(list);
System.out.println(hashSet+"/n"+hashSet.size());

}
}

2：计算每个城市个数

/**
* 通过Map计算重复值次数
*/
public class CalCount {

private static final Map<Object,Object> map = new HashMap<Object,Object>();

public static void main(String[] args) {

String s = "长沙,湘潭,湘西,长沙,娄底,株洲,娄底,";

String [] array = s.split(",");

if(array.length>0){
for(int i = 0; i < array.length; i++) {
if(map.containsKey(array[i])) {

Integer count = (Integer) map.get(array[i]);

count++;

map.put(array[i], count);

} else {
map.put(array[i], 1);
}
}

System.out.println(map);

}

}
}

3：

package com.bailiangroup.osp.modules.mp.test;
import java.util.Date;
import org.joda.time.DateTime;
import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.databind.ObjectMapper;

public class TimeDateObjectMapper {
private static final ObjectMapper MAPPER = new ObjectMapper();
public static void main(String [] args){

DateTime time = new DateTime();
DateTime days = time.minusDays(1).minusMinutes(44);//向前推
DateTime hours = time.plusHours(2);//向后退
Date date = hours.toDate();
System.out.println(date);
try {
net.sf.json.JSONObject object = new net.sf.json.JSONObject();
//这个是去除为空的字段过滤掉  阿里巴巴
MpUsers mpUsers = new MpUsers();
String string = net.sf.json.JSONObject.fromObject(mpUsers).toString();
System.out.println(string);
String jsonString = JSON.toJSONString(mpUsers);
System.out.println(jsonString);
//              Object object = MAPPER.readValue("json",MAPPER.getTypeFactory().constructCollectionType(List.class, Object.class));
} catch (Exception e) {
e.printStackTrace();
}
}

}

public static void main(String[] args) {
String input="&lt;pre class=&quot;brush: java;&quot;&gt;";
String script = StringEscapeUtils.unescapeHtml3(input);
String input1=StringEscapeUtils.escapeHtml3(script);

System.out.println(script);
System.err.println(input);
int int1 = RandomUtils.nextInt(1000, 9999);
System.out.println(int1);

}

### Zhang_Java

HashMap和Hashtable的区别

HashMap和Hashtable的比较是Java面试中的常见问题，用来考验程序员是否能够正确使用集合类以及是否可以随机应变使用多种思路解决问题。HashMap的工作原理、ArrayList与Vector的比较以及这个问...

LCZ777
2014/03/29
0
0
ParisGabriel：Python全栈工程师（0基础到精通）教程 第二十三课（每周总结：3）

ParisGabriel 　 　　　　　　　　　　　　　　　　　每天坚持 一天一篇 点个订阅吧 灰常感谢 当个死粉也阔以 　　　　　　　　　　　　　　　　　　week summer： 　　　　　　　　　　　　...

ParisGabriel
07/22
0
0
Python全栈工程师（每周总结：3）

ParisGabriel 　 　　　　　　　　　　　　　　　　　每天坚持 一天一篇 点个订阅吧 灰常感谢 当个死粉也阔以 　　　　　　　　　　　　　　　　　　week summer： 　　　　　　　　　　　　...

07/22
0
0

2017/05/24
54
0
Python全栈工程师（递归函数、闭包）

ParisGabriel 每天坚持手写 一天一篇 决定坚持几年 全栈工程师 　 　　　　　　　　　　　　　　　　　　　　　　Python人工智能从入门到精通 函数式编程： 　　是指用一系列函数解决问题 　...

07/17
0
0

Linux如何查看进程、杀死进程、启动进程等常用命令

5分钟前
0
0
ASP.NET Core MVC 静态文件配置

whltian
15分钟前
0
0
linux之自定义命令

22分钟前
3
0
linux基础

24分钟前
2
0
Caffe-源码分析(一)

CHECK_X函数，用于比较两个blob之间的值 CHECK_EQ(x,y)<<"x!=y"，EQ即equation，意为“等于”，当x!=y时，函数打印出x!=y。 CHECK_NE(x,y)<<"x=y"，NE即not equation，意为“不等于”，，...

Pulsar-V
24分钟前
1
0