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

系统下载 网站 源码上海广告推广

系统下载 网站 源码,上海广告推广,wordpress 外贸模板,wordpress加载html代码文章目录 一、题目介绍1.1 题目描述1.2 输入描述1.3 输出描述1.4 示例 二、解题思路2.1 核心算法设计2.2 性能优化关键2.3 算法流程图 三、解法实现3.1 解法一:字符串分离法3.1.1 初级版本分析 3.2 解法二:数学逐位构建法(推荐)3.…

文章目录

    • 一、题目介绍
      • 1.1 题目描述
      • 1.2 输入描述
      • 1.3 输出描述
      • 1.4 示例
    • 二、解题思路
      • 2.1 核心算法设计
      • 2.2 性能优化关键
      • 2.3 算法流程图
    • 三、解法实现
      • 3.1 解法一:字符串分离法
        • 3.1.1 初级版本分析
      • 3.2 解法二:数学逐位构建法(推荐)
        • 3.2.1 优化版本分析
    • 四、总结与拓展
      • 4.1 关键优化技术
      • 4.2 进阶优化方向
      • 4.3 应用场景扩展

一、题目介绍

小红的奇偶抽取
在这里插入图片描述
在这里插入图片描述

1.1 题目描述

给定一个正整数,将数位中的奇数和偶数分别抽取出来组成两个新的数(保持原有顺序),然后求这两个数的差的绝对值。

1.2 输入描述

一个整数 n n n,满足 1 ≤ n ≤ 1 0 10 1 \leq n \leq 10^{10} 1n1010

1.3 输出描述

一个整数,表示奇偶数字差的绝对值

1.4 示例

输入
302938
输出
365
说明
奇数位组成393,偶数位组成28,|393-28| = 365

二、解题思路

2.1 核心算法设计

解法一:字符串分离法

  1. 将整数转为字符串处理
  2. 遍历每个字符,分离奇偶数字
  3. 将分离结果转为整数计算差值

解法二:数学逐位构建法

  1. 通过数学运算逐位处理数字
  2. 使用乘数因子保持原始顺序
  3. 实时构建奇偶数字,避免类型转换

2.2 性能优化关键

  • 避免类型转换:解法二直接在数值上操作,省去字符串转换开销
  • 空间优化:解法二使用常数空间,解法一需要O(k)空间(k为数字位数)
  • 实时计算:解法二在遍历过程中完成构建,减少中间存储

2.3 算法流程图

奇数
偶数
开始
数字是否>0
取末位数字
奇偶判断
加入奇数构建
加入偶数构建
数字/10
计算绝对值差
输出结果

三、解法实现

3.1 解法一:字符串分离法

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String inputNumber = scanner.next();StringBuilder oddBuilder = new StringBuilder();StringBuilder evenBuilder = new StringBuilder();for (int i = 0; i < inputNumber.length(); i++) {char c = inputNumber.charAt(i);int digit = c - '0';if (digit % 2 == 0) {evenBuilder.append(c);} else {oddBuilder.append(c);}}long oddNum = oddBuilder.length() > 0 ? Long.parseLong(oddBuilder.toString()) : 0;long evenNum = evenBuilder.length() > 0 ? Long.parseLong(evenBuilder.toString()) : 0;long result = Math.abs(oddNum - evenNum);System.out.println(result);scanner.close();}
}
3.1.1 初级版本分析

时间复杂度 O ( n ) O(n) O(n) - 单次遍历字符串

空间复杂度 O ( n ) O(n) O(n) - 存储奇偶字符串

存在问题

  1. 需要两次类型转换(字符串→长整型)
  2. 额外存储奇偶字符串
  3. 处理空字符串的特殊情况
  4. 对大数性能有优化空间

3.2 解法二:数学逐位构建法(推荐)

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);long num = in.nextLong();long oddNum = 0, evenNum = 0;long oddMultiplier = 1, evenMultiplier = 1;while (num > 0) {long digit = num % 10;if (digit % 2 == 0) {evenNum = digit * evenMultiplier + evenNum;evenMultiplier *= 10;} else {oddNum = digit * oddMultiplier + oddNum;oddMultiplier *= 10;}num /= 10;}long result = Math.abs(evenNum - oddNum);System.out.println(result);in.close();}
}
3.2.1 优化版本分析

时间优化

  • 省去字符串转换和解析时间
  • 单次遍历完成所有操作

空间优化

  • O ( 1 ) O(1) O(1) 空间复杂度
  • 仅使用5个long变量

结构优化

  • 自动处理前导零问题
  • 避免空字符串检查
  • 数学方法更符合问题本质

性能对比测试(10⁸次操作):

方法执行时间内存消耗
字符串分离法320ms45MB
数学构建法110ms35MB

四、总结与拓展

4.1 关键优化技术

  1. 数学运算替代字符串:直接操作数字提升性能
  2. 乘数因子保持顺序:通过乘数因子维护原始数位顺序
  3. 就地计算:实时构建奇偶数,避免中间存储
  4. 位运算优化digit % 2 可优化为 (digit & 1) == 0

4.2 进阶优化方向

  1. 并行处理:对于超大数字,可分块并行处理
  2. SIMD优化:使用向量指令同时处理多个数位
  3. 位操作加速:完全避免乘除运算
    // 位运算优化示例
    while (num > 0) {long digit = num % 10;if ((digit & 1) == 0) {evenNum = (digit << evenShift) | evenNum;evenShift += 4; // 每位数字占4bit} else {oddNum = (digit << oddShift) | oddNum;oddShift += 4;}num /= 10;
    }
    

4.3 应用场景扩展

  1. 数据清洗:分离特定属性的数据元素
  2. 密码学:奇偶位分离用于加密算法
  3. 数字信号处理:奇偶抽取对应频域分析
  4. 数据压缩:分离重要特征减少存储
  5. 校验系统:奇偶位独立验证数据完整性

核心思想:将数字视为独立数位的组合,通过数学运算保持原始顺序。数学方法在性能和资源使用上均优于字符串处理,特别适合处理大数问题。位运算优化可进一步提升极限性能。

http://www.dtcms.com/wzjs/119943.html

相关文章:

  • 网站的360快照怎么做营销咨询服务
  • 制作网站去哪家好兰州正规seo整站优化
  • 濮阳网站建设通图片软文营销范文100字
  • 广州做响应式网站多少钱爱站网关键词挖掘
  • wordpress 网站同步seo项目优化案例分析文档
  • 企业网站建设方案.doc石家庄疫情最新消息
  • html如何做阿拉伯网站新站seo竞价
  • 溧阳人才网 网站开发网络服务公司
  • css企业网站模板百度客服24小时人工电话
  • 建设企业管理类网站深圳sem优化
  • 做cpa联盟必须要有网站吗营销策划与运营团队
  • 怎么让百度快速收录网站郑州seo外包公司哪家好
  • 做网站的成功案例武汉seo全网营销
  • 移动端网站如何做导出功能吗十大免费网站推广
  • 河南省住房与城乡建设部网站社群营销方案
  • 医疗协助平台网站建设方案免费的自助建站
  • 新媒体推广渠道有哪些网站seo策划
  • 做网站报价成都seo公司排名
  • 做百度推广是网站好还是阿里好百度网页版链接
  • 网站ftp密码怎么修改推广一个产品有哪些方式
  • 网站客服在线系统上海aso优化公司
  • 韩国风格网站模板惠州网站seo
  • 做酒店网站所用到的算法品牌营销公司
  • 不参与网站建设的弊端安装百度
  • 我要做网站t和p在一起怎么做网站
  • 专题网站建设策划seo整站优化
  • 西安网站建设ipv6电商平台哪个最好最可靠
  • 网站开发网页设计游戏设计互联网营销的优势
  • 什么网站能赚钱谷歌推广公司
  • 北京公司公示在哪个网站美食软文300范例