给定两个有序的整数列表，编写一个程序，将它们合并成一个有序的列表。
list1 = [1, 3, 5, 7]
list2 = [2, 4, 6, 8]
可以使用归并排序的方法将两个有序列表合并。具体步骤如下：

1. 创建一个新的空列表，用于存储合并后的列表。

2. 定义两个变量 i 和 j，分别表示 list1 和 list2 当前比较的元素位置，初始值为 0。

3. 比较 list1[i] 和 list2[j] 的大小，将较小的元素添加到新的列表中，并将相应的下标加 1。

4. 重复操作 3 直到其中一个列表中的所有元素都添加到新列表中。

5. 将另一个列表中剩余的元素依次添加到新列表中。

6. 返回新的有序列表。

以下是 Python 代码示例：

```python
def merge(list1, list2):
    i = j = 0
    merged_list = []
    while i < len(list1) and j < len(list2):
        if list1[i] < list2[j]:
            merged_list.append(list1[i])
            i += 1
        else:
            merged_list.append(list2[j])
            j += 1
    merged_list += list1[i:]
    merged_list += list2[j:]
    return merged_list

list1 = [1, 3, 5, 7]
list2 = [2, 4, 6, 8]
merged_list = merge(list1, list2)
print(merged_list) # Output: [1, 2, 3, 4, 5, 6, 7, 8]
```