Да, в первом и последнем случае будет O(n). Но это сокращённый формат, которым все пользуются.
Вообще они не одинаковые. В первом случае это будет O(1*n). В последнем O(3*n).
Но эти константы вообще не важны, потому что big O notation описывает форму функции, а не её конкретные параметры. А обе эти функции- линейные.
Коэффициентами можно принебречь.
Так что первый и последний алгоритм не одинаковые, но имеют одинаковое обозначение, потому что обе эти функции линейные.
А биг О скорее о различиях между экспоненциальным, линейными и логорифмическими функциями, а не о конкретных затраченных вычислительных ресурсах.