public static String reverse1(String str)
{
return new StringBuffer(str)reverse()toString();
}
2最常用的方法:
public static String reverse3(String s)
{
char[] array = stoCharArray();
String reverse = ""; //注意这是空串,不是null
for (int i = arraylength - 1; i >= 0; i--)
reverse += array[i];
return reverse;
}
3常用方法的变形:
public static String reverse2(String s)
{
int length = slength();
String reverse = ""; //注意这是空串,不是null
for (int i = 0; i < length; i++)
reverse = scharAt(i) + reverse;//在字符串前面连接, 而非常见的后面
return reverse;
}
4C语言中常用的方法:
public static String reverse5(String orig)
{
char[] s = origtoCharArray();
int n = slength - 1;
int halfLength = n / 2;
for (int i = 0; i <= halfLength; i++) {
char temp = s[i];
s[i] = s[n - i];
s[n - i] = temp;
}
return new String(s); //知道 char数组和String相互转化
}
使用下拉列表或组合框,用户可以在列表中选择互斥的值。 用户只能选择其中一个选项。使用标准的下拉列表,用户只能在列表中进行选择,但是如果加上组合框,他们也可以输入列表中没有的选项。
下列这几点需要明确:
思考以下问题:
除了以上适用于下拉列表的原则,可编辑式下拉列表还需要注意以下几点:
对于下拉列表, 列表中的选项数量不是选择控件的决定因素 ,它们可能只有一个,也可能成千上万。 可编辑式下拉列表的项目数量多少都无所谓,因为用户也可以输入一个不在列表中的值。 而且下拉列表可以用于输入数据,所以可能无法事先知道项的数量,也可能无法限定数据的值。 始终为可编辑式列表框预留出至少三个项目高度的屏幕空间。
下拉列表和及其组合框有以下几种应用范例:
下拉列表 是一个标准的下拉式列表框,包含一组固定的预设值。当列表收起时,只有选中项目是可见的。用户点击下拉按钮时,展现所有选项。如果要变更选项,用户需要点击展开列表,然后选择另一个选项。
预览式下拉列表 是可以预览选择结果以帮助用户进行选择的下拉列表。
可编辑式下拉列表 是一个下拉组合框,它允许用户输入一个下拉列表中不存在的值。
可编辑式列表框 是一个常规组合框,允许用户输入在下方列表框中不存在的值。
提示符是放置在可编辑下拉列表中作为其默认值的标签或短指令。 与静态文本不同的是,一旦用户在组合框中键入某些内容或获得输入焦点,提示符就会从屏幕上消失。
以下情况,可以使用提示符:
不要仅仅使用提示符来指导用户从列表中选择某些内容或单击按钮。 例如,像“选择一个选项”或“输入一个文件名”然后单击“发送”这样文字的提示符是不必要的。
使用提示符的时候,注意:
在提到下拉列表时:
在提到组合框时:
什么是C语言?C语言的简介。
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。
它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。
语言特点:C是中级语言/C是结构式语言/C语言功能齐全/C语言适用范围大/简洁紧凑、灵活方便/运算符丰富/数据类型丰富/C是结构式语言/语法限制不太严格,程序设计自由度大/适用范围大,可移植性好。
给你个暴力计算的:
#include<stdioh>int a[10];
void f(int n)
{
while (n)
{
++a[n % 10];
n /= 10;
}
}
int main()
{
int n,i,r;
for (n = 100; n < 400;++n)
{
for (i = 1; i <= 9; ++i)
a[i] = 0;
f(n);
f(2 n);
f(3 n);
r = 1;
for (i = 1; i <= 9; ++i)
r = a[i];
if (r == 1)
printf("%d,%d,%d\n", n, 2 n, 3 n);
}
return 0;
}
结果:
192,384,576
219,438,657
273,546,819
327,654,981
编程思路:
从n个数中选出m个数进行组合(n>m)可以采用递归的方式解决
先从n个数中选一个数出来,然后在剩下的n-1个数当中选取m-1个数进行组合
对于n-1个数,同样有
先从n-1个数中选一个数出来,然后在剩下的n-2个数当中选取m-2个数进行组合
对于n-N个数,同样有
先从n-N个数中选一个数出来,然后在剩下的n-N个数当中选取m-N个数进行组合
如此递归
直到m-N==1为止
当m-N为1的时候,自然不用选了
每次选取的结果放入一个数组当中,作为参数传递下去
当递归到m-N为1的时候,数组和当前选定的值即构成一个有效组合,便可输出
这类问题都可以尝试递归的解决思路,将一个复杂的大问题,一级一级转化为较小的,可以解决的问题
示例代码如下:
void select(int data/待筛选的数 里面不能有重复的数/,
int n,
int m,
int list[]/假设list长度足够,为m,初始list中的元素值为-1/,
int listlen)
{
int i,j;
if(m==1){
for(i=0;i<n;i++){
for(j=0;list[j]!=-1;j++)
{
printf("%d ",list[j]);
}
printf("%d\n",data[i]);//输出一个结果
}
return;
}
for(int i=0;i<n-m;i++)
{
list[listlen-m] = data[i];
select(data+i+1,n-i,m-1,list,listlen);//递归调用
}
}
以上就是关于怎么编程实现排列组合全部的内容,包括:怎么编程实现排列组合、Windows桌面应用程序设计指南(控件篇5-下拉列表&组合框)、什么是C语言程序设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)