13,190
社区成员
发帖
与我相关
我的任务
分享
int 输入数, 位 = 0;
cout << "输入任意整数不超过指定 Int 范围位数:" << endl;
cin >> 输入数; int *动态 = new int[输入数];
do
{
动态[位] = 输入数 % 10;
输入数 /= 10;
位++;
} while (输入数 > 0);
printf("输入数为: %d位\n", 位);
for (int 序 = 位 - 1; 序 >= 0; 序--)
printf("%d ", 动态[序]);
printf("\n");
int 输入数, 位 = 0;
cout << "输入任意整数不超过指定 Int 范围位数:" << endl;
cin >> 输入数;
list<int> 动态;
do/*输出各位数*/
{
动态.push_back( 输入数 % 10);
输入数 /= 10;
位++;
} while (输入数 > 0);
printf("输入数为: %d位\n", 位);
list<int>::iterator 元素头 = 动态.begin();
while (元素头 != 动态.end())
cout << *元素头++ << " ";
cout << endl;
list<int>::iterator 元素尾 = 动态.end();
while (元素尾 != 动态.begin())
cout << *--元素尾 << " ";
printf("\n");
让我怎么说?说有高手可是...说没高手又不对.
List<int> 贝 = new List<int>(Enumerable.Range(1, 1000000));/*生成元素加入约瑟夫环*/
int 序 = 2 - 1, 报 = 8 - 1, 量 = 贝.Count();/*报数减去自身报1因此要-1,元素序从0开始因此要-1*/
do/*这是真实逐个排除的设计环算法:10000运行1.7秒,10万运行14.7秒,*/
{/*顺环计算,当序=数组量时,因为序应是-1的,那么,等于数组量的序就要转到序0处*/
序 = ((序 + 报) % 量 == 0) ? 0 : (序 + 报) % 量;
Console.WriteLine("出局数: {0}", 贝[序]);
贝.RemoveAt(序);
量 = 贝.Count();
} while (贝.Count() > 1);
Console.WriteLine("\n胜出数: {0}", 贝[0]);
这样设计是不是就减少了时间空间复杂度了?
还是主题的事,难道就没人愿意说说?或给资料地址,有时要找资料确不是件很容易的事,是否有大神给没读书的我举例通俗的说说?
你那叫死读经的念头,不是佛所教的,我不要,我这叫活读经,岂是你目前所知!