PDA

View Full Version : سوال: سوال در مورد جاوا



mohamad73
شنبه 09 شهریور 1392, 21:33 عصر
من یه پروژه گرفتم که متنش اینه:

ترکیبات مرتب ارقام: می‌خواهیم تمام ترکیبهای ارقام وارد شده را به صورت مرتب چاپ کنیم. مثلا برای ارقام ۰، ۱ و ۲ ترکیبات مرتب سه رقمی به صورت زیر هستند:
012 021 102 120 201 210
در این پروژه k رقم که ممکن است تکراری باشند را از کاربر می گیرید و تمام ترکیبهای n رقمی (n=<k) رقمی آنها را چاپ می‌کنید.
تو بحث تولید اعداد مشکل دارم:گریه:

cups_of_java
شنبه 09 شهریور 1392, 22:11 عصر
public static void permutation(String str) {
permutation("", str);
}

private static void permutation(String prefix, String str) {
int n = str.length();
if (n == 0) System.out.println(prefix);
else {
for (int i = 0; i < n; i++)
permutation(prefix + str.charAt(i), str.substring(0, i) + str.substring(i+1, n));
}
}

mohamad73
شنبه 09 شهریور 1392, 22:27 عصر
خیلی خیلی ممنون

vahid-p
یک شنبه 10 شهریور 1392, 16:20 عصر
این کد فکر نمیکنم دقیقا کاری که سوال میخواد رو انجام میده.
شما مثلا 223 رو وارد کنید و نتیجه رو ببینید. ترکیب های تکراری بهتون میده. به نظرم البته سوال کننده باید اطلاعات و نمونه های بیشتری رو بگه.
مثلا
223 چه ترکیبهایی رو ازش باید نشون بده.
یا مثلا 23 یا 32 هم ترکیبهایی از 223 هستند؟ چون تمامی رقم ها وجود دارن ولی با تعداد رقم کمتر.

اینها باید کاملا مشخص باشه.