当前位置: 首页 > news >正文

网站开发背景和目的北京外贸营销网站建设费用

网站开发背景和目的,北京外贸营销网站建设费用,WordPress全屏图,手机网站建设价格低重新排列字符串s中的字母#xff0c;使得任意两个相邻的字母都不相同。 思路#xff1a; 让相邻字母不同#xff0c;能想到的办法是先把相同的字母排列#xff0c; 然后在相同字母的缝隙中插入另一种字母。 比如aab, 先把a a排出来#xff0c;再… 重新排列字符串s中的字母使得任意两个相邻的字母都不相同。 思路 让相邻字母不同能想到的办法是先把相同的字母排列 然后在相同字母的缝隙中插入另一种字母。 比如aab, 先把a a排出来再在2个a的缝隙中插入b得到aba. 那么就需要统计每个字母出现的次数。 为了让能插入字母的缝隙排列时中间空一位也就是先把出现最多的字母放在偶数位 如果不够放就折回来到奇数位所以字母出现次数不能超过s长度的一半 不然折回来就是相同字母了。字母的出现次数超过s一半的直接返回“”。 而且一定要先排出现最多的字母可以试试example1中先排b。 可以用一个优先队列按字母出现的次数从大到小排列。然后一一取出排列。 也可以只找到出现次数最多的字母先排列再直接按顺序排剩下的。 优先队列 public String reorganizeString(String s) {HashMapCharacter,Integer map new HashMap();char[] chs s.toCharArray();//按字母出现的次数倒序排列PriorityQueueCharacter pq new PriorityQueue((a,b)-(map.get(b)-map.get(a)));char[] res new char[s.length()];for(char c : chs) {map.put(c, map.getOrDefault(c, 0)1);}pq.addAll(map.keySet());//出现频率最多的字母多于字符串长度的一半if(map.get(pq.peek()) (s.length()1)/2) return ;int i 0;while(!pq.isEmpty()) {char c pq.poll();for(int j 0; j map.get(c); j) {if(i s.length()) i 1; //偶数位放满开始放奇数位res[i] c;i 2;}}return new String(res);}只先排出现次数最多的剩下的按顺序排。此方法更快。 public String reorganizeString(String s) {int[] cnt new int[26];char[] chs s.toCharArray();int n chs.length;char[] res new char[n];for(int i 0; i n; i) cnt[chs[i]-a];//找到出现次数最多的字母和次数int maxCnt 0;int freqCh 0;for(int i 0; i 26; i) {if(cnt[i] maxCnt) {maxCnt cnt[i];freqCh i;}}if(maxCnt (n1)/2) return ;//先排出现最多的字母不然可能会出现奇数位和偶数位是同一字母的情况int idx 0;while(cnt[freqCh] 0) {res[idx] (char)(freqCh a);idx 2;cnt[freqCh] --;}for(int i 0; i 26; i) {while(cnt[i] 0) {if(idx n) idx 1;res[idx] (char)(ia);idx 2;cnt[i] --;}}return new String(res);}
http://www.pierceye.com/news/425610/

相关文章:

  • 校园网站建设网个人网站设计论文道客巴巴
  • 网站网站制作价格建站网站建立网站第一步是什么
  • 组织部信息化建设官方网站郑州平面设计公司
  • 可信网站标志网站分析数据
  • 个人求职网站设计惠州建网站
  • 南京网站制作学校南京有名的网站建设公司
  • wordpress 代码页面宁波专业优化网站制作公司
  • 中国建设行业网站第五届中国国际进口博览会召开时间
  • 做网站设计的有些什么职位wordpress h1 h2 h3
  • 广告公司寮步网站建设哪家好怎么样在百度上推广自己的产品
  • 做亚马逊和淘宝网站公司网站建设深圳
  • 济宁建设网站网站改版 合同
  • wordpress 网站费用北京网站建设 知乎
  • 网站设计师绩效网站页面那个图怎么做
  • 帮别人起名 做ppt的网站做一个网站需要服务器吗
  • 高端网站建设公司兴田德润可以不新产品推广策划方案
  • 建设银行如何网站设置密码嵊州市建设银行网站
  • 陕西 网站建设福州mip网站建设
  • 让人做网站 需要准备什么网站建设国内外现状
  • 滨海做网站公司网页设计模板 中文
  • 辽源市网站建设怎么学做电商
  • 做pc端网站行情网站标签化
  • 中国做的很好的食品网站php图片网站源码
  • 做自媒体小视屏哪个网站好邹平网站建设公司
  • 字体样式 网站layui 网站建设模板
  • 沈阳网站设计江苏城乡建设部网站首页
  • 网站手机端生成wordpress如何下载
  • 网站数据抓取怎么做营销型网站开发定制
  • 福州营销型网站建设中国建设工程信息网站
  • 怎么在服务器里面做网站公司网站模板怎么做