1. 程式人生 > >面試題 0到N的所有數按字典序輸出

面試題 0到N的所有數按字典序輸出

題目具體輸出舉例:N=121

0
1
10
100
101
……
108
109
11
110
111
……

118
119
12
120
121
13
……

19
2
20
21
22
23
24
25
26
27
28
29
3
30
……

void func1(int n){
	int total = 0;//記錄輸出多少個數
	int begin = 0;
	while(total < n){
		if(begin <= n){
			cout<<begin<<endl;
			total++;

			if(begin == 0)
				++begin;
			else
				begin *= 10;
			}
		else{
			begin = begin/10+1;
			while(begin != 0 && begin %10 == 0)
				begin /= 10;
		}
	}
	
 }


相關推薦

試題 0到N的有數字典輸出

題目具體輸出舉例:N=121 0 1 10 100 101 …… 108 109 11 110 111 …… 118 119 12 120 121 13 …… 19 2 20 21 22 23 24 25 26 27 28 29 3 30 …… void func1(int

字典輸出陣列的全排列

 對於每個用例,輸出它的全排列,每個排列佔一行,輸出按照數值升序排列 思路: 我定義了一個函式next_permutation來計算下一字典序,演算法如下: 1)先從後往前找到一對升序組,設其座標為a和a+1 2)從a+1到陣列末尾找到一個大於a的最小的數,設其座標為b 3)交換a和b位置的值 4)a+1

基於回溯法思想:輸入一個字串,字典打印出該字串中字元的所有排列。例如輸入字串abc,則打印出由字元a,b,c能排列出來的所有字串abc,acb,bac,bca,cab和cba。

    連結:https://www.nowcoder.com/questionTerminal/fe6b651b66ae47d7acce78ffdd9a96c7 來源:牛客網 import java.util.List; import java.util.Col

#題目描述:輸入一個字串,字典打印出該字串中字元的所有排列。例如輸入字串abc, #則打印出由字元a,b,c能排列出來的所有字串abc,acb,bac,bca,cab和cba

才學不久,希望每天能記錄一篇 import random def zidianxulie():#封裝整個函式 a=input(“請輸入字串:”) a1=sorted(a)#先對我輸入的字串進行一個排序,簡單得到一個列表 l=[]#空列表的

輸入一個字串,字典打印出該字串中字元的所有排列(劍指offer)

題目 輸入一個字串,按字典序打印出該字串中字元的所有排列。例如輸入字串abc,則打印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。 簡單解釋下什麼是字典序,簡單理解就是像英文字典那樣排序, 設想一本英語字典裡的單詞,何者在前何者在後? 顯然的

三道習題(1、將單詞表中由相同字母組成的單詞歸成一類,每類單詞按照單詞的首字母排序,並 #每類中第一個單詞字典序由大到小排列輸出各個類別。 #輸入格式:按字典序由小到大輸入若干個單詞,每個單詞佔一行,以end結束輸入。)

#coding=gbk ''' 1、將單詞表中由相同字母組成的單詞歸成一類,每類單詞按照單詞的首字母排序,並按 #每類中第一個單詞字典序由大到小排列輸出各個類別。 #輸入格式:按字典序由小到大輸入若干個單詞,每個單詞佔一行,以end結束輸入。 #cinema #iceman #maps #spam #a

怎麼獲取URL欄的GET或POST請求、試題:輸入url回車發生了什麼、JDBC的引數

我本來想查“為什麼URL欄輸入網址,按回車後,使用GET請求方法”(我知道Http請求預設使用GET方法) (1)GET和POST兩種基本請求方法的區別【講解方式很有趣很幽默】 (2)在URL輸入算get還是post【重點講了get與post在"表現形式上、原理上、Http響應上"

C++ STL 之 next_permutation 的用法(下一個序列函式,字典排)

這是一個求一個排序的下一個排列的函式,可以遍歷全排列,要包含標頭檔案<algorithm> 下面介紹一下next_permutation函式的用法       與之完全相反的函式還有prev_permutation (1)int型別的next_permuta

《牛客網劍指offer27題》輸入一個字串,字典打印出該字串中字元的所有排列

題目 : 輸入一個字串,按字典序打印出該字串中字元的所有排列。例如輸入字串abc,則打印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。 結果 : 牛客網編譯通過 程式碼及思路:     //中心思想:列出第一位所有可能情況,然後後

計算1-N中第K小的數字(字典排序)

public static int calK(int n, int k) { if (k > n) { return 0; } int target = 1;

1到n的數字典排序

#coding:utf-8 ''' 輸入:n,m 輸出從 1 到 n 的數按 字典序 排序的低 m 個數 如輸入:11 4 1 10 11 2 3 4 5 6 7 8 9 中的第四個數 輸出: 2 ''' import numpy as np from numpy

網易筆試—字典為字串陣列排序

題目要求:字串由n個'a',m個'z'組成,對所有可能出現的字串按照字典序排列,找出第K個字串。 思路: 生成所有可能的字串陣列 對陣列排序 找出對應的第k個字串 sort(),陣列按字母順序對陣列中的元素進行排序,說得更精確點,是按照字元編碼的順序進行排序。 生成所

Java將Map物件字典排列,並且封裝成URL的工具類

/**      *      * 方法用途: 對所有傳入引數按照欄位名的 ASCII 碼從小到大排序(字典序),並且生成url引數串<br>      * 實現步驟: <br>      *      * @param paraMap   要排

給定整數n和m, 將1到n的這n個整數字典排列之後, 求其中的第m個數。

自己構造了一個map,自定義了map的比較函式,程式碼通過率為50%,不知道為什麼這樣的複雜度還不能通過?程式碼如下#include <iostream> #include <vector> #include <map> #include

POJ 1815 Friendship(最小割+字典輸出割點)

rom http con struct pen .org 個人 tar main http://poj.org/problem?id=1815 題意: 在現代社會,每個人都有自己的朋友。由於每個人都很忙,他們只通過電話聯系。你可以假定A可以和B保持聯系,當且僅當:①A知

劍指offer——字典順序輸出字串的排列

很多演算法題對於Python來說,感覺都可以用封裝解決。其實若按照c++一步一步來進行,有時候也失去了Python便利的意義。(反正我沒在答案裡找到。) 基本思路都是用先把可能的排列找出來,在sorted。 class Solution: def Permutation(self,ss

給出不多於5位的正整數,求出它是幾位數,分別輸出每一位輸出每一位數字。

給出不多於5位的正整數,要求: 1,求出它是幾位數 2,分別輸出每一位數 3,按逆序輸出每一位數字,例如原數為321,應輸出123. 第一種方法: (1)求一個數是幾位數,有一種方法是: if (x > 9999) { place = 5; printf("這是一個五位數\n");

給出一個不多於5位的整數,要求 1、求出它是幾位數 2、分別輸出每一位數字 3、輸出各位數字,例如原數為321,應輸出123。

撰寫人——軟工二班——陳喜平 題目描述 給出一個不多於5位的整數,要求 1、求出它是幾位數 2、分別輸出每一位數字 3、按逆序輸出各位數字,例如原數為321,應輸出123。 將下面的程式填寫完整。 #include <stdio.h> int main() { i