C проблемы и [закрытые] решения

Поскольку альтернатива использованию regex Вы могла сделать это в Наборах:

from sets import Set

allowed_chars = Set('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-')

if Set(my_little_sting).issubset(allowed_chars):
    # your action
    print True
6
задан Yehuda Katz 16 November 2009 в 03:08
поделиться

10 ответов

Вы можете попробовать решить некоторые проблемы в Project Euler . Первые несколько довольно просты, но они очень быстро становятся очень сложными. Я думаю, очень весело пытаться придумать самый короткий код или высокооптимизированный код для вычисления результатов (хотя я обычно использую C ++ или Python, а не C).

Одно из преимуществ проблем Project Euler заключается в том, что они ориентированы не только на язык; это проблемы, которые действительно заставляют задуматься о том, как найти элегантное решение сложных проблем.

10
ответ дан 8 December 2019 в 02:21
поделиться

И не забывайте code-golf .

Вы, вероятно, захотите отвечать только на вызовы (вопросы), у которых есть не менее 10 голосов.

10
ответ дан 8 December 2019 в 02:21
поделиться
$(selector)
    .css({backgroundColor:"#f00"})
    .animate({backgroundColor:"transparent"}, 2000, null, 
    function() { this.style.backgroundColor='transparent'; });

Не так чисто, потому что перед тем, как сделать его прозрачным, цвет становится белым, но это вариант.

Проблемы программирования

17. Проект Эйлер

18. Саратовский онлайн-судья

19. Онлайн-судья Sphere

20. Онлайн-судья TJU

] 21. TopCoder

22. Уральский онлайн-судья

23. Шлюз учебных программ USACO

24. Онлайн-судья UVa

25. Ухань Онлайн-судья университета

26. Онлайн-судья ZJU

27. Z-Trening

6
ответ дан 8 December 2019 в 02:21
поделиться

Написать компилятор. Он не должен быть сложным или даже полным: вы можете создать простой язык (подмножество lisp?), А затем написать для него лексер. Убедитесь, что вы начали с формальной грамматики. Вы коснетесь управления памятью, арифметики указателей и других интересных вещей на C.

Я многое узнал об автоматах и ​​проектировании компиляторов, написав простой синтаксический анализатор YAML на C ++.

4
ответ дан 8 December 2019 в 02:21
поделиться

Попробуйте книгу Денниса Ричи по языку программирования C. У книги неплохие задачи и читать тоже одно удовольствие :) Для более сложных задач вы можете пойти на конкурс побитового программирования

2
ответ дан 8 December 2019 в 02:21
поделиться

Ruby Quiz содержит 156 проблем с решениями. Но в Ruby, а не C. См. Дополнительную информацию в списке рассылки ruby-lang после того, как Джеймс перестал быть мастером викторин Ruby.

1
ответ дан 8 December 2019 в 02:21
поделиться

Хранилище поразрядных вещей Кнута может помочь в благородных поисках :)

http://www-cs-faculty.stanford.edu/~knuth/fasc1a.ps.gz

0
ответ дан 8 December 2019 в 02:21
поделиться

Практикуйте код Katas , язык не имеет большого значения. Попытка разгадывать катас, которые вы уже сделали на другом языке, обычно довольно эффективна для изучения нового языка.

0
ответ дан 8 December 2019 в 02:21
поделиться

Создавайте библиотеки, реализующие сложные структуры данных , такие как двоичные деревья, словари и т. Д.

6
ответ дан 8 December 2019 в 02:21
поделиться

Вы всегда можете посетить Freshmeat , найти несколько интересующих вас проектов и посмотреть их систему отслеживания ошибок. Возьмите код и попытайтесь исправить несколько проблем.

Это помогает открытому исходному тексту, а также помогает вам привыкнуть к переходу к чужому коду в отладочных очках.

0
ответ дан 8 December 2019 в 02:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: