资讯专栏INFORMATION COLUMN

输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数

lewif / 1487人阅读

摘要:例如输入,从到这些整数中包含的数字有,,和,一共出现了次。实现求个数中一共含有多少个思路一思路二结果

例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次。

java实现:

// 求n个数中一共含有多少个1

  public class Order_Shed {
    
        //思路一
        public static int countNum(int[]array,char target){
            int count=0;
            if(array==null||array.length==0)
                return count;
            String source="";
            for(int i=0;i1)
                    count+=(n/dividend_2+1)*dividend_1;
                else if(temp==1)
                    count+=(n/dividend_2)*dividend_1+n%dividend_1+1;
                else
                    count+=(n/dividend_2)*dividend_1;
                dividend_1*=10;
                dividend_2=dividend_1*10;
            }
            return count;
        }
    
    
    
    public static void main(String[] args) {
        int[] array={1,2,3,4,5,6,7,8,9,10,11,12};
        System.out.println(countNum(array, "1"));
        System.out.println(countNumOfOne(12));
    }
    
    
}

结果:

5

5

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/69931.html

相关文章

  • javascript实现一些算法题

    摘要:字符的左右移动给定一个字符串,这个字符串为号和个字母的任意组合。题目二在一个字符串中找到第一个只出现一次的字符。乘除模拟位运算真正位运算输入一个整数,求从到这个整数的十进制表示中出现的次数。 字符的左右移动 给定一个字符串,这个字符串为号和26个字母的任意组合。现在需要把字符串中的号都移动到最左侧,而把字符串中的字母移到最右侧并保持相对顺序不变,要求时间复杂度和空间复杂度最小。 var...

    DirtyMind 评论0 收藏0
  • 由三道 LeetCode 题目简单了解一下位运算

    摘要:使用位运算数组只出现一次数字的数组得到最低的有效位,即两个数不同的那一位看完上面的解法,我脑海中只有问号的存在,啥意思啊下面就让我们简单了解一下位运算并解析一下这三道题目。另,负数按补码形式参加按位与运算。你可做过这几道题? 在面试的准备过程中,刷算法题算是必修课,当然我也不例外。某天,我刷到了一道神奇的题目: # 136. 只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外...

    daydream 评论0 收藏0
  • 由三道 LeetCode 题目简单了解一下位运算

    摘要:简单介绍一下位运算异或运算异或逻辑的关系是当不同时,输出当相同时,输出。另,负数按补码形式参加按位与运算。使一个数的最低位为零,可以表示为。,截止到这儿,三道题目中使用的位运算介绍完毕,那么这里我们插入一下的详细题解。你可做过这几道题? 在面试的准备过程中,刷算法题算是必修课,当然我也不例外。某天,我刷到了一道神奇的题目: # 136. 只出现一次的数字 给定一个非空整数数组,除了某个元素只...

    刘明 评论0 收藏0
  • 剑指offer:二进制1数(Java)

    摘要:问题描述输入一个整数,输出该数二进制表示中的个数。其中负数用补码表示。思路方法将二进制变成字符数组,遍历数组统计的个数,这种办法不需要考虑正负数。遍历字符数组,统计的个数判断该位是否是,如果是就,否则执行下一次循环。的二进制表示想右移一位。 1.问题描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 2.思路 方法1:将二进制变成字符数组,遍历数组统计1的个数,这...

    lifesimple 评论0 收藏0
  • 【Python从入门精通】五万六千字对Python基础知识做了结吧!(二十八)【值得收藏】

    摘要:它是一门解析型的语言,何为解析型语言呢就是在运行时通过解析器将源代码一行行解析成机器码。而像语言,等则是编译型的语言,即通过编译器将所有的源代码一次性编译成二进制指令,生成一个可执行的程序。 ...

    leeon 评论0 收藏0

发表评论

0条评论

lewif

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<